Skip to main content

Full text of "CPC Magazine (French) Issue 006"

See other formats


LA REVUE DES UTILISATEURS D AMSTRAD 



\fefrefah/eur 
LGAR 



m 



3 NOUVEAUX-NES CHEZ 
ERE INFORMAT/QUEL 



LES TURBO 
UNE SACREE FAMILLE! 



Après avoir conçu TURBO-Pascal. Philippe KAHN a r.roo autour do ce programme 
toute une famille de logiciels complémentaires, qui permol du tout taire ou presque ; 
depuis l'enseignement sans peine du langage Pascal aux }eux, on passant par le dessin, 
la construction sur mesure de traitement de texte, de gestion de tïchlors, etc., 




TURBO Pascal ■ 625 F H.T. (à partir de) 

Avec plus de 400 000 utilisateurs flans le monfle 
entier. TURBO Pascal esl le compilateur le plus 
utilisé. Vous disposez en un seul programme 
d'un environnement complet, éditeur et compilateur, 
pour programmer en Pascal TURBO Pascal compile 
directement en mémoire pour plus de rapidité. 



Le langage Pascal esl actuellement un des langages 
les plus performants sur micro-ordinateurs. 
Ses applications sont nombreuses : gestion, calculs 
ii B'iîi'iojiï :g : ::t :■ ;,-v"^î y ■-- i-e ■;_• 
intelligence artificielle... TURBO Pascal a été retenu 
dans le cadre de l'opération • Informatique Pour 
Tous » comme support d'enseignement du langage 
Pascal dans les lycées et tes universités. Un gage 
de qualité et de sérieux Les machines 16 dits 
disposent de deux options ; l'option 87 gère 
le microprocesseur 8087 pour augmenter la vitesse 
et la précision dans les calculs : l'option BCD utilise 
la raprésentaflon décimale codée binaire pour 
éliminer les erreurs d'arrondi. 
La version IBM comporte en plus des routines 
graphiques et une tortue. 
Portabilité 

TURBO Pascal tourne sur un grand nombre de 
rrtaenines. soos MS/PC-DQS, CP/M-80/86, depuis 
I Amstrad jusqu'à l'IBM AT. 
Prix 

TURBO Pascal offre te meilleur rapport qualité/prix 
pour 625 F H.T. (sous CP/M-80) ou 800 F H.T 
(PC/MS-OOSI vous disposez d'un éditeur plein 
écran et d'un compilateur Pascal complet. Ces prix 
comprennent le manuel de 350 pages en français, 
disquette comprend de plus te code source de 



TURBO-Tutor ■ 3W F H.T, 

Turbo Tuio' esl un cours a tulo bm Ml 

Pascal Les dAbulanls comme in p>oor. 

expérimentés » Irouvr'onl une mOt pn 

lecrilure de leurs progr*nm«« Pjn.e I 

comprend un manu» M ?00 iu«*-. m 

ei une disquette avec » cod« wuu» * tout 

les exempts 

TUMO-OrapMi ■ «71 F H.T. 

'.'-■.-■ 

graphiques h.ml* f«viluiK>n DOW UIM M 

compati bit':-. : >■ 

de ligures geomelnquoi de couftwv de potfOWiH 

Elles comprennent iMlOTti I ' 

gérer des Itntl 

disponible fin 85 

TURBO-TooJboi 629 F H.T. 

TURBO Toolrxw comprend t'ois ullMlwrtt 

constamment utilisés |i.n le* <Mv»iutn-- 

gestion de IIcMcX ISAM i i 

B + ) une rouline général» t» In ri m 

générant un module o mitalUiion pour iw 

programmes écrits avec TURBO f êttM '.i * 

développez 1res souvenl i1>-. i 

pertormants vous leronl (pgrw un 

iii sont taumls MU ' 

Pascal. u!ii. ■ ■ 




« Mil phi* «* tKr«H pot" <m% C ni également 

■ 



i attmanl M Imle ou 

'-.« ÏURBO 
li»*- h-.i «M h) i.*M Mu>i« [Nil 3 fttre 

1 un manuel de 
procédures 

Al IéUMv .Un-, «. 
tlMW l«Mr paimM • ton«'*u* v< 

Il tu pliiï-'ii ■■. parties 
BM et 



' ' ^BflMB ^H^^™A 



MicraCalc. petit tableur è 



n TURBO Pascal. 




Pour vos commandes, 
renseignements et 
documentation gratuite ; 
ou pour contacter notre 
assistance téléphonique : 
47.64.08.52. 



FRACIEL 

IMPORTATEUR 

EXCLUSIF DE 



BORIPHD 

► INTERNATIONAL 




L, i 



ssette et la disquette n° 1 contiennent les programmes parus dans CPC 1 et 2. 
issette et la disquette n° 2 contiennent les programmes parus dans CPC 3 et 4. 



Tous les programmes parus 
dans CPC sur une disquette 
ou sur une cassette pour ne pas 
perdre de temps à les saisir. 
L'idée n'est -elle pas bonne ? Sur 
la même disquette (ou cassette) 
seront regroupés les programmes 
parus dans deux numéros suc- 
cessifs de CPC. 

Le tarif, port compris, 1 10 F pour 
la disquette ou 85 F pour la cas- 
sette pour les abonnées. JOIN- 
DRE IMPERATIVEMENT VOTRE 
ETIQUETTE D'ABONNE AU CHE- 
QUE DE COMMANDE. 
Pour les non-abonnés, le prix est 
de 140 F (D) ou 1 10 F (C), tou- 
jours port compris. 
Passez vos commandes directe- 
ment aux Editions SORACOM. 
Pas de contre-remboursement. 
Les programmes sont livrés tels 
que publiés dans la revue et n'ont 
subi aucune modification, A vous 
de tes adapter à vos besoins si 
vous le désirez. 



BON DE COMMANDE 
(valable jusqu'à épuisement des stocks) 



Abonné 
110F 
85 F 



D CPC DISC N° 1 - 2 - 3 

D CPC CASSETTE N° 1 - 2 - 3 . , 

D CPC numéro 2-3-4-5 

NOM Prénom 

Adresse 

Code Postal Ville 

Entourez le numéro du disque choisi ou de la revue. 

Frais de port : 6,50 F pour un ou deux numéros de CPC. 
Franco pour CPC DISC et CASSETTES. 

Ci-joint, chèque bancaire ou postal de F. 



Non-abonné 

140 F 

110 F 

18 F 



ABONNEZ-VOUS 



S'ABONNER, C'EST : 

— recevoir la revue tranquillement à domicile, 

— bénéficier de prix avantageux par souscription comme nous venon 
par mailing en octobre (gain : 45 francs I), 

— bénéficier de prix sur les disquettes et maintenant les cassettes, 

— recevoir l'auto-collant CPC, 

— bénéficier de notre aide dans de nombreux domaines. 

Alors, n'hésitez pas. A bon nez -vous... 



CPC, La Revue des Utilisateurs d'Amstrad 

ABONNEMENT POUR UN AN - 11 NUMÉROS : 175 F 
6 MOIS : 99 F - D'ESSAI 3 MOIS : 50 F 
Tarif avion : + 120 F 

Ci-joint un chèque (libellé à l'ordre des Editions SORACOM) 
d'un montant de francs. 



Code Postal 
Date 



SORACOM. 

s - Le Grand Logis 




Général de Gaulle - 35170 BRUZ 




n°6 



Edîto 7 

Cherry Paint 8 

Courrier et nouvelles 15 

Vitrine du libraire 18 

Banc d'essai des logiciels 20 

Les logiciels d'Outre-Manche 22 

Les tableaux DIM 24 

La souris AMX 28 

Kilobyte 30 

Un magnétophone à l'essai 32 



Essai imprimante MT 80S 33 

Essai U DOS 35 

Essai SEMWORD 38 

AMSTUS : le tableur 40 

Traceur de graphiques 46 

Trucs et astuces 52 

Initiation à l'assembleur 53 

Le coin bidouille 55 

Un jeu : Trafalgar 60 

Petites annonces 64/66 



LA ROCHELLE 

m2i 

Micro Informatique Individuelle 

CPC 4S4-664-6128 
PCW8258 

Matériel, logiciels, jeux, 
utilitaires, accessoires, 
périphériques, librairie. 

21, rua Alton 1" 
17000 LA ROCHELLE 

Tél.: 44. «1.80. ES. 



■Micronaute 



LE SPECIALISTE 
AMSTRAD à NANTES 

464-664 
6128-8256 

périphériques 

+ de 100 logiciels 

disquettes, cassettes 

semi-pro ou particuliers 

9, rue Urvoy de St. Bedan 
44000 NANTES 
Tél.: 40.69.03.58 



MICRO- 
ORDINATEUR 82 



LE SPECIALISTE AMSTRAD 
A MONTAUBAN 

ORDINATEURS CPC 
464, 664, 6128 « PCW 8256 

Nombreux logiciels et 
périphériques 

39, rue de la Comédie 
(près du Théâtre) 

82000 MONTAUBAN 
Tél.: 63.66.27.22 




'i 



LUNDI 27 ; 



mclapawm*™** 



JANVIER »M 



amswadwance 



DtBAtt. 



^SSïSZ^i^ 



&r»"'« ; '"L™.. 



. fAéiro : Port*. 



Heures d'ouverture 



Prix d'entrée 



Organisation . 



Heures a o*—- — j-A* 

h ■""" m mmU] 



e) 



; 42.41.8I-»' 




CPC 

I Revue des utilisateurs d'Amstrad 
10. Avenue du Général de Gaulle 

| 3S170 BRUZ 

99.52.98.11 

I Télex : 741 042 F 
CCP RENNES 794.17 V 



Rédacteurs en chef 
Marcel LE JEUNE 
Denis B0NOM0 
Photocomposition 

FIDELTEX 



Maquette 

Jean-Luc AULNETTE 
Patricia MANGIN 



Distribution NMPP 
I Dépôt légal à parution 

Copyright 1985 
| Publicité 

IZARD CREATIONS 
66, rue Saint Hélier, 
| 35100 RENNES 
M.: 99.31.64.73 

PC est un mensuel édité par la Sari 

ORACOM, expirant le 22 septembre 

079. au capital de 50 000 francs. 

| S FAUREZ en est le gérant, représen- 

n légal. L'actionnaire majoritaire est 

rence MELLET. 

I Code APE : 5120 



I Distribuée en Belgique et e 






I CPC est une revue mensuelle totale- 
I ment indépendante d'AMSTRAD IGB) 
t d'AMSTRAD FRANCE 



TORIAL 



ATTENTION, DANGER ! 

AMSTRAD, c'est bien beau, ça marche et ça peut rappor- 
ter gros ! D'accord, mais attention aux embûches. 
Les Associations et /es clubs naissent çà et là. L "idée de 
faire une exposition arn've vite parfois avec l'idée de "faire un 
peu d'argent". 

Seulement n 'organise pas une exposition qui veut, et les profes- 
sionnels souhaitent, mettez-vous à leur place, savoir de quoi if 
retourne. 

Nous avons présenté, le mois dernier, la publicité pour AMSTRAD 
EXPO, organisée par l'A. P.C. Cette Association a, semble-t-il, 
trouvé en face d'elle une autre équipe, professionnelle, équipe 
qui a déposé le titre "Amstrad Expo" le 4 novembre, ceci avec 
la bénédiction d'AMSTRAD France, et organise une rencontre 
commerciale fin janvier (nous y serons). 

Au moment où nous mettons sous presse ce numéro, nous ne 
savons toujours pas si AMS'EXPO (son nouveau nom) se tien- 
dra bien début décembre. 

Nous pensons utile de mettre en garde les candidats à l'organi- 
sation de manifestations commerciales. Qu 'Us n 'hésitent jamais 
à se renseigner avant d'agir. Ils éviteront ainsi de nombreux déboi- 
res. 



LONDRES 

2' AMSTRAD 
COMPUTER SHOW 



Hôtel NOVOT EL- HAM MER SMITH | 

Samedi 11 janvier 86 de 10 a 18 h 
Dimanche 12 janvier 86 de 10 à 17 h 

Organisé par notre confrère 
"Computing with the Amstrad" 




>upon àjol 
à toute 
correspondance 










Pascal HIGELIN 




an$ co socond articlm consacré à Cherry-Painf, nous 
affons voir comment animer dos icônas sur l'écran 
do ('AMSTRAD, tanë qu'if n'y ait aucun cfignote- 
monf, mais fout d'abord, if va falloir créor cos icônos... 



cer cette forme, il suffira de faire un 
deuxième masquage en XOR, donc 
pour déplacer la forme, il suffit de 
deux masquages ; le premier mas- 
quage en XOR à l'endroit de départ 
pour effacer la forme, le deuxième 
masquage en XOR à l'endroit d'ar- 
rivée pour réafficher cette forme. 
Cette méthode est très rapide maïs 
n'est pas très belle : tant que la 
forme se déplace sur un fond uni, 
tout va bien, maïs dès qu'elle passe 
sur un objet, on ne voit plus rien 
(c'est le même effet, lorsque dans 
Sorcery, le sorcier passe sur vr>9 
porte, ou dans Jane sur Apple). 
Dans l'autre solution, il faut d'abord 
sauvegarder le fond à l'endroit où 
on va placer la forme, dons un buff- 



Pour animer une forme sur l'écran, 
il y a plusieurs possibilités : la pre- 
mière solution consiste à redéfinir 
des caractères et à les afficher à l'en- 
droit désiré à l'aide d'un langage tel 
que Basic ou Pascal. Vous avez cer- 
tainement déjà expérimenté cette 
méthode... et constaté que c'était 
épouvantablement lent et saccadé I 
La deuxième solution consiste à 
écrire les routines d'animation en 
assembleur : là, pas de problèmes, 
ça va vite. Pour les routines en 
assembleur, il y a de nouveau deux 
possibilités pour dessiner une 
forme : la première de ces solutions, 
aui est aussi la plus commune, est de 
faire un OU exclusif (XOR) entre le 
fond et lo forme à animer. Pour effa- 



fer, puis on pourra masquer le fond 
en OR avec la forme : on obtient 
alors une forme noire qui se super- 
pose à l'image. 

Pour déplacer la forme, il faudra 
donc d'abord recharger l'ancien 
fond ; pour cette solution, on aura 
donc trois opérations au lieu de 
deux, mais c'est beaucoup plus joli I 
Pour le programme Cherry-Paint, 
cette deuxième solution n'est pas 
tout à fait satisfaisante non plus. Pre- 
mièrement, toutes les icônes 
devraient être noires, deuxième- 
ment, si une icône se déplaçait sur un 
fond noir, on ne pourrait plus la 
voir I 

Pour pallier à ces inconvénients, il 
faut faire un masquage AND pour 
forcer une zone à zéro avant de 
faire le masquage OR. 
On s'arrangera pour que le masque 
AND soit légèrement plus grand que 



le masque OR : de cette manière, on 
crée un liseret blanc autour des icô- 
l nés. En définitive, pour déplacer une 

forme, il faudra donc effectuer qua- 
tre opérations : 

1 — charger l'ancien fond pour effa- 
| cer la forme, 

2 — sauver le fond de l'endroit où 
se trouvera la forme, 

3 — masquer AND, 

4 — masquer OR. 
Si on utilise ce procédé tel quel, 
l'animation des icônes ne sera pas 
de bonne qualité. Comme on effec- 
tue les quatre opérations précéden- 
tes à n'importe quel moment, on ris- 
que fort bien d'effacer la forme juste 
avant qu'elle ne s'affiche sur le moni- 
teur ; on aura, par conséquent, un 
clignotement incessant I 
Pour éliminer un clignotement, il faut 
afficher la forme pendant que le spot 
vidéo remonte de la dernière ligne 
d'une trame vidéo à la première 
ligne de la trame suivante, car pen- 
dant ce temps, le spot est éteint. 
Pour effectuer cette synchronisation, 
il y a de nouveau deux solutions : 

— on peut utiliser la routine système 
en 4 BD19. Cette routine attend le 
signal de fin de trame émis par le 
processeur vidéo. Le défaut de cette 
méthode est que, lorsqu'on attend la 
fin de trame, on ne fait rien d'autre, 
donc on perd une grande partie du 
temps de calcul ; 

— il est beaucoup plus intéressant, 
dans notre cas, d'utiliser une routine 
d'interruption synchronisée avec le 
retour du spot car, dans ce cas, la 
routine de déplacement d'une icône 
devient totalement indépendante du 
programme principal et il suffit de lui 
fournir la position de l'icône, pour 
qu'elle s'y déplace instantanément 
et sans clignotement I 
Mais il y a encore un problème qui 
risque d'apparaître : dans le cas où 
les routines d'affichage sont trop len- 
tes, le dernier masquage risque de 
ne pos être terminé lorsque s'affiche 
le haut de l'écran et, lorsqu'on 
déplace l'icône à cet endroit, on ris- 
que de la voir disparaître partielle- 
ment I 

Il est donc nécessaire d'écrire les 
routines de masquage les plus rapi- 
des possibles. 

Etant donné que le programme 
Cherry-Paint fonctionne en mode 2, 
chaque icône a huit représentations 
différentes. Là encore, il y a deux 
méthodes pour obtenir ces huit 



représentations : 

— dans le premier cos, il n'y a 
qu'une représentation en mémoire, 
les autres étant obtenues, lorsque 
c'est nécessaire, par rotations suc- 
cessives des octets de cette première 
représentation. Dans le cas extrême 
où il est nécessaire de déplacer la 
représentation de 4 bits, le temps de 
calcul devient prohibitif ; 

— Dans le deuxième cas, qui est 
celui utilisé pour Cherry-Paint, tou- 
tes les représentations sont en 
mémoire, la routine est alors très 
rapide, par contre, beaucoup de 
mémoire est utilisée pour stocker les 
formes. Les huit représentations sont 
décalées de 1 bit chaque fois par 
rapport à la précédente ("pré- 
shifted shapes" en anglais). 

Le stockage en mémoire et les déca- 
lages successifs des différentes for- 
mes sont effectués par le premier 
programme Basic. Ce programme 
est formé de quatre parties : 
Lignes 1000 à 5190 
C'est la table des masques, pour 
chaque icône, on a d'abord le mas- 
que AND puis le masque OR. Les six 
derniers masques sont les différentes 
formes de pinceaux. 
Lignes 5200 à 5700 
Initialisation et remplissage de la 



<»k^> 



mation. Pour ce faire, je vous pro- 
pose un chargeur hexa (deuxième 
programme Basic) qui comporte des 
sommes de test pour chaque ligne 
introduite : si le total calculé ne cor- 
respond pas à la somme de test, il 
vous demandera de réintroduire la 
ligne fautive. Pour chaque ligne, il 
y a donc 8 nombres hexa et une 
somme de test à introduire. 
Lorsque les deux parties du code 
machine sont introduites, vous pour- 
rez tester le bon fonctionnement du 
programme en tapant et en exécu- 
tant le troisième programme en 
Basic, mais auparavant, assurez- 
vous que votre disquette contient les 
fichiers : SCR.BIN, TR.BIN (ces 
fichiers ont été créés par le premier 
programme Basic de ce mois). 



QUELQUES CONSEILS 

Si vous possédez un moniteur cou- 
leur, je vous conseille de faire POKE 
&80CB,13:POKE &80CC,13 pour 
changer la couleur. 
Pour adapter le programme à une 
manette de jeux : POKE &8233,72: 
POKE &824B,73:POKE 88269,75: 
POKE 48281,74. 



J 




table qui contient les adresses des 

tables de formes. 

Lignes 5710 à 5960 

Remplissage de la table des formes. 

Lignes 5970 à 6280 

Rotation des masques à droite 7 fois 

et stockage en mémoire. 

Pour pouvoir faire fonctionner 

Cherry-Paint, il va falloir introduire 

le code hexa du programme d'ani- 



1010 ' LA TABLE DES "ORMES EST EN TiATA' 

1020 ' 

1G3D ' 

1040 DATA 2.16.3 

1050 ■ 

;ÛÈ0 DATA iXlllltlll.iXlllîilll, 1X11111111 

ij7o data iximiiii.&xniiim.&ummi 
:obo data &xDOGtim.&xiiimn.cinmi!i 
1Q90 data 4x00000111,1x11111111. uimim 




-' % S S ï ^ R U S S 




i=S|3ssil 



I j§§§§§S§S 

'assis 






Ils § 



1111111 



JSSSS8! 
5111111 



5§§g§: 
igSgg: 
î 1 § Si î 






g S § § S 

I s 1 1 i 



onSogoSSuSëSc 

'B s i S § § § § § 1 § | s î 









? s I 



3gg8SBS883ggoï 



îSgSSSSgBg 









SgggggggE 



ni 
ni 
□m 

doii 

JDDi 

:oOP 
1000 
DOOO 
DDDD 

innn 




D0OD0 

11000 
30100 
D011D 

"in i o i 
moi 

DC101 

30001 

10001 
30010 

13000 










§ § § S = 


gSSggSgSgSggjggjggJ 
















DG01 
XliJi 

DDDD 

DDDD 

in 


mis 


10DD 
101 

DO10 
001 

00 1 
001 

DD1 
□00 

DOC 
DOOO 
DDDD 
3000 
ODDD 
DOOO 

OUI 






















S3S33SS3S5S 


S3S33 


SSS3SSS3333335SS 






_,„a ssggg 



S fi S 8 S S R i-. =1 =', ^ S S R R S R 

' g s" ■£ fe" s g s 2 £ a 
















ianSS£SS^°^maïïS'o*3r 



i=S33Sa533f 
iï!5SS8Bt33; 



lësss 



sa ws a es I 



L lltl- Si 








s a !q 

H uj I 



5_ 



^ 



a 




^ 






ë 








a ££ 












g"ffl 








* 




l!s 




S 


S si" 








































K ë £ 


5 


























+ 


S ï! 








S 3È3 




V 



























ÏSSSSS 






i _ g 



lit | 

5éÊïïï ïïïî 



:si*i 



^ d V£ âfi 



.". 77. ./. 77. r-j m r^i - 






g s 


tt 


a 


3 g? 


p 


s 


g 


H fl 


ïï 8 


s 


g 


§s; 


^ 


s 


S 


S S 


g S 


g 


g 


Î88 


S 


s 


? 


E S 


H S 


if 


g 


8S3 


ï 


ÏÏ 


5 


3 8 


8 S 


t 


8 


38ë 


s 


s 


S 


S g 


8 g 


t 


S£ 


Sgg 


s 


3 


S 


^ S 


S s 


t 


tt 


S t E 


s 


2 


s 


R 3 


s S 


lis 


i£ 




? 


~ 


s 


9 8 



5^ o- r- « N t 



US3CS = lï2|ii8g8S8ftïïgSSî:Slfi!i3SSIi!SÏ = P!eS5ÏSS8S8S8£ 



S85=-SïffiCSÏ8ÏCS23gc 



;gSSS8SPi£3- 



l G S S S !3 c 



3S = B:S^S = SSÏï!3£SiSÏÏSëgKS5ÏÏSS!3sa 

«ËïïooDaSSaîïSSSSSEoniiJBÏÏÏESjïgSS 

!SSSagasâ8S8SSSSS8a8SgSQS£ia83S 
SSS8SS888§S38£S3S58îïïa2î85Si;8a, 

;^gï?së^ës8 5S8gsss3S2?2âssga< 



ï g 8 g 



S88Ï 



Î3SSSS85GSIS8P 






^e'^assf 



Respectez les règles du courrier 
des lecteurs, si vous désirez obte- 
nir une réponse, personnelle ou 
par la revue. N'oubliez ni le cou- 
pon réponse découpé dans CPC, 
ni votre étiquette d'abonné (si 
vous l'êtes), ni l'enveloppe tim- 
brée pour la réponse (si vous 
n'êtes pas abonné). 
D'autre part, il est inutile de nous 
soumettre un listing pour que 
nous vous aidions à y rechercher 
vos erreurs : nous n'avons pas le 
temps de le faire. 
Plusieurs lettres sur le même 
thème : "J'ai écrit un programme 
super, qui dit Papa-Maman... 
Puis-je vous l'envoyer ?" 
La réponse est : oui ! Ne deman- 
dez pas sans cesse la "permis- 
sion" ou notre avis. Envoyez 
votre programme sur cassette ou 
sur disquette, accompagné d'un 
texte explicatif manuscrit. Npus 
testerons vos réalisations et 
publierons les meilleures. 
N'oubliez pas qu'il y a un abon- 
nement gratuit pour la première 
publication, ou une participation 
rémunérée. 

Tout dépend de ce que vous nous 
envoyez... 

Ne nous écrivez pas, non plus, 
pour avoir des cours particuliers 
et nous décrire comment pro- 
grammer et animer des Sprites, 
colorier une surface ou gérer 
votre discothèque... Le courrier 
des lecteurs ne peut être une 
seconde revue ; sa raison d'exis- 
ter est de vous aider à résoudre 
de petits problèmes ou répondre 
à des questions précises concer- 
nant des articles déjà publiés 
dans CPC. 

Un dernier mot : pas d'étiquette 
d'abonné (si vous êtes abonné) 
ou pas d'enveloppe affranchie 
seif-adressée (si vous n'êtes pas 
abonné) et de coupon réponse 
égal pas de réponse. Ne l'oubliez 
pas ! 



Guy PICOU 

46 LA CHAPELLE-MARIVAL 

Comment récupérer un pro- 
gramme dont le chargement est 
incomplet, du fait de /'apparition 
d'une erreur de type "Read Error 
a" (ou b) ? 

Nous ne connaissons pas la solu- 
tion qui permettrait de récupérer 
un fichier "inachevé" et, bien 
que cela ne semble pas facile à 
résoudre, la solution a peut-être 
déjà été trouvée par un de nos 
lecteurs. Nous ne manquerons 
pas de la publier si elle nous par- 
vient. 



André BAROTTE 
49 SAUMUR 

Faut-il revendre le 464 pour ache- 
ter le 6128 ou vaut-il mieux 
l'équiper d'un drive et d'une 
64 k ? 

La question est résumée ici. 
Notre lecteur, dans sa lettre, se 
faisait l'écho des nombreux cour- 
riers reçus sur ce thème, et nous 
allons tenter d'y répondre. Le 
6 1 28, par son avance technolo- 
gique, a surpassé les 464 et 664. 
Il faut savoir néanmoins que les 
avantages d'un 61 28 (fonctions 
nouvelles, Bank Manager) ne 
pourront pas être obtenues sur 
un 464, fût-il équipé d'un drive 
et des 64 k supplémentaires... 
Si seuls le gain d'espace mémoire 
et les services rendus par un drive 
vous séduisent, leur simple 
adjonction au 464 devrait vous 
satisfaire. C'est aussi un bon 
moyen pour ne pas perdre trop 
d'argent avec une revente en 
occasion... Si, par contre, vous 
désirez bénéficier des fonctions 
nouvelles, vous n'aurez pas le 
choix : il faudra changer de maté- 
riel... à moins qu'un constructeur 
ne nous fabrique sous peu un kit 
d'adaptation bon marché ! 



cPc 



èij_?o BRuz. 



Pascal BERGE 
92 M EU DON 

Pourquoi ne pas tester les diffé- 
rents 64 k du marché ? 
Rassurez-vous, ça vient ! Le pro- 
blème est que la place disponible 
dans CPC n'est pas extensible à 
souhait. Il existe un sacro-saint 
rapport entre rédaction ne) /pub et 
coût de revient pour un nombre 
de pages donné. 

Julien CAMPOS 
40 TY ROSSE 

Les mylars, qu'est-ce que 
c'est ? 

Bonne question ! Elle nous a d'ail- 
leurs été posée à plusieurs repri- 
ses. Les mylars sont des films 
servant à insoler, par un procédé 
photographique, les plaques 
d'époxy présensibilisées. Le 
résultat de cette manipulation 
est, après gravure au perchlorure 
de fer, un circuit imprimé. C'est 
le seul procédé valable pour réa- 
liser des circuits à forte densité 
de pistes. Bien entendu, il ne peut 



ICI propose logiciels 
professionnels sur disquelles. 

ICITEXTE : mixoge de 2 célèbres Traite- 
ment de texte avec mailing 590 F. 

ICITAB : tableur performant el interactif 
avec ICITEXTE. Consultation simultanée de 
3 tableaux à lécron. 

ICICOMPTFAC 1 comptabilité + 
facturation 

ICICOMPTFAC 2 (avec accès direct) 

ICICOMPTAB 3 ■ comptabilité (accès 
direct) 1000 comptes 100 joumoux 8000 



ICI INFORMATIQUE 

2, rue du Pont -des- Tanneries 
21000 DIJON -Tél. 80.45.13.69 



être utilisé que par des gens dis- 
posant d'un minimum d'équipe- 
ment et de savoir-faire. 
Ne faites pas comme ce lecteur 
qui, recevant ses mylars, les a 
grattés en pensant avoir affaire à 
des "transferts". Dommage ! 



Nous avons eu un petit problème 
avec le schéma de l'adaptation 
PERITEL que nous proposions 
dans CPC n° 4, ce qui nous a 
valu pas mal de courrier et d'ap- 
pels téléphoniques. 
Voici le câblage correct à effec- 
tuer entre PRISES AMSTRAD et 
PERITEL. 



| au 73.36.88 65 entre 17 et 19 h. 




Le + 5 V de l'alimentation sépa- 
rée va en 16 de la PERITEL. La 
masse de l'alimentation va en 18. 
Précisons aussi que le son, sor- 
tant du jack stéréo AMSTRAD, 
pourra être envoyé vers la PERI- 
TEL, à travers un câble blindé 
deux conducteurs. 
Un des conducteurs au point 2 de 
la PERITEL, l'autre au point 6. La 
masse ira en 5. 



Signal 


Connact. 
Amstrad 


Paritsl 


Rouge 

Vert 

Bleu 

Synchro 

Masse 


2 
3 

4 
5 


15 
11 
7 
20 
17 



LES CLUBS 

MICROS-DATA 
5, av. Joseph Claussat 
63400 CHAMALIERES 
ORIC et AMSTRAD. Ateliers 
informatique et électronique. Ini- 
tiation et programmation. Pour 
tout renseignement, contacter le 
président Jean-Marc FOURVEL 



MESSAGE A TOUS LES 

AMSTRADISTES : 
1 L'AMSTRAO N'EST PAS 
I UNE MOUCHE TSE-TSE ! 

I Le CLUB AMSTRAD de NANTES 
I vous ouvre ses portes et ses 

diverses activités dans les locaux 

de : 
1 MICRONAUTE 
I 9, rue Urvoy de St. Bedan 
| 44000 NANTES 

■ (entre musée Dobrée et place de 
l'Edit de Nantes) 

| Tél.: 40.69.03.58 

AMS'CERCLE DE LYON 
(Association loi 1901) 

Les mercredis à 18 h 30 chez 
BLANC-BERNARD (2* étage), 
9-11, rue Salomon-Reinach, 
59361 LYON, 
Tél.: 78.72.25.48, poste 22. 

VOTRE ATTENTION S.V.P. ! 

j Ajustez vos lunettes si vous en 

portez et lisez bien ce qui suit 

| parce qu'on ne vas pas vous le 

■ répéter tous les mois... 

] 1 — Il est impératif de joindre au 

: courrier le coupon découpé, et 

l non photocopié, dans la revue 

I (page Editorial, en général) et de 

' joindre, soit l'étiquette découpée 

sur votre enveloppe d'abonné, 

soit une enveloppe affranchie 

i self-adressée. En leur absence, 

; plus de réponse. 

' 2 — Lorsque vous commandez 

, une cassette ou une disquette, 

n'oubliez pas de préciser son 

numéro : Catherine, qui s'occupe 

des envois, ne lit pas encore dans 

le marc de café pour deviner vos 

intentions. Résultats : vos 

commandes sont différées et 

vous attendez deux semaines de 

plus, le temps que les échanges 

de courrier soient effectués, 

avant de pouvoir admirer les 

excellents programmes que nous 

vous proposons. 

COUP DE FREIN 
AU PIRATAGE 

S'il est souhaitable, tout au moins 
c'est notre avis, que les éditeurs 
de logiciels fassent un effort pour 
proposer des réalisations d'excel- 



lent qualité au meilleur prix pos- 
sible (le logiciel familial coûte sou- 
vent trop cher... ), il faut égale- 
ment que les utilisateurs 
comprennent que le piratage est 
un véritable fléau qui touche 
durement l'informatique familiale. 
Le piratage démarre au niveau de 
la simple copie, que l'on donne 
ou échange contre une autre 
copie d'un logiciel convoité. S'il 
y a vente, le fait est encore plus 
grave... Notre but n'est pas de 
faire là le procès des pirates (en 
herbe ou organisés), mais de ne 
pas contribuer à les aider. Nous 
avons donc décidé de refuser, au 
fur et à mesure qu'elles nous par- 
viendront, les petites annonces 
visant à échanger (ou vendre) des 
listes ou des copies de logiciels, 
des "déplombeurs", etc. 
Quelques annonces de ce genre, 
déjà maquettées alors que nous 
prenions la décision, vont encore 
passer dans CPC, mais ce seront 
les dernières. 

Un conseil donc, n'envoyez plus 
de telles annonces, elles seront 
systématiquement refusées. 
L'auteur d'une petite annonce 
s'engagera donc et certifiera 
implicitement ne vendre ou 
échanger que des logiciels en 
emballage d'origine, accompa- 
gnés de leurs notices. 



AU SECOURS ! 

A la rédaction de CPC, nous som- 
mes littéralement submergés par 
l'avalanche de votre courrier 
technique. C'est pourquoi nous 
vous demandons de nous aider 
en écrivant vos lettres de la façon 
suivante : 

• Posez vos questions une à une 
en nous laissant suffisamment de 
place pour y répondre directe- 
ment sur votre lettre qui vous 
sera retournée. 

• Essayez de décrire vos problè- 
mes le plus clairement possible. 
Si votre ordinateur vous annonce 
un message d'erreur, spécifiez 
bien lequel et en quelle ligne. 

• N'omettez pas de joindre une 
enveloppe affranchie self- 
adressée. 

Nous pourrons ainsi gagner du 
temps et vous répondre plus rapi- 
dement. Merci ! 



UN LOGICIEL PASSIONNANT QUI 
LANCE UN NOUVEAU STYLE DE JEU !!! 




CPC 6728 

disponible. 



Nouveaux tarifs, 
Nous consulter. 

AVIGNON i (90) 22.47.26 



□ Je désire recevoir le logiciel «BUGS BUSTER» 
Je joins à ma commande un chèque de 
125,00 1 15,00 F pour frais de port 

Q Je désire recevoir le catalogue couleur des £ 

titres FREE GAME BLOT ° 



A LA VITRINE DU 




"MONTAGES, EXTENSIONS ET PERIPHERI- 
QUES DU CPC" 
SCHÙSSLER 
Micro Application 
199 F 

Amis bricoleurs, à vos fers à souder. Si vous 
ne craignez pas de réaliser des interfaces et 
que c'est là votre passion, sachez que le prix, 
un peu élevé, de cet ouvrage sera compensé 



Après quelques rappels de la logique élémen 
taire, l'auteur vous propose de réaliser quel 

expliquer le principe du décodage d'adresses. 
it proposées : à 
s convient. Si 
projetez de réaliser pli 
carte bus bufferisèe > 
sont aussi proposés : 



grammable, une carte analogique/digitale. 
Toutes les réalisations sont proposées avec 
les schémas électriques, les plans d'implan- 
tation et le tracé des circuits imprimés. Un 
testeur logique vient compléter la panoplie et 

Complet avec ses 400 pages et unique en 
son genre, cet ouvrage devrait ravir tous ceux 
qui veulent tirer leur AMSTRAD de son iso- 
lement, et lui permettre de dialoguer avec le 
monde extérieur. 




Pour en savoir plus, il vous faut lire un 
ouvrage consacré à CP/M. Parmi ceux qui 
sont disponibles, celui-ci a l'avantage de trai- 
ter des deux versions qui concernent l' AMS- 
TRAD. Il vous permettra de bien comprendre 
les subtilités de ce vieux système d'exploi- 
tation. De l'utilisateur débutant, qui voudra 
simplement connaître l'utilisation de quelques 
commandes, au programmeur expérimenté 
désirant découvrir la conception interne de 
CP/M, chacun y trouvera son intérêt. 
La présentation, claire, reprend pour 
-être déjà, 
amène à la description des différents 
utilitaires (l'Assembleur ASM, PIP, etc.). 
Adapté au 464, 664, 61 28, ce livre sera une 
première étape sur la route des program- 
toucher a CP/M. L'étape sui- 
passera par de nombreuses manipula- 
tions et par la recherche d'un livre beaucoup 
plus détaillé sur la structure interne de CP/M. 



ARCHAMBAULT par les articles qu'il propose 
dans CPC, L'auteur a le goût des produits 
finis, bien présentés, structurés, etc. C'est 
te à partager dans ce 
livre de 140 pages. Ce n'est pas un guide du 
Basic : c'est un complément du manuel d'ori- 

Concevoir des programmes alliant rapidité, 
performances et fiabilité, deviendra désor- 
mais possible à tout lecteur ayant si 
conseils dispensés par l'auteur, programmeur 

Les astuces de programmatioi 
posées pourront être réutilisées par chacun, 
lors de réalisations personnelles. 
Jouer avec les couleurs, manipuler les chaî- 
nes de caractères, redéfinir des symboles, fil- 
trer les entrées (pour éviter que le programme 
ne se plante! sont autant d 
nent un aspect "fini" au p 



tomber, tout en vous aid 
erreurs éventuelles. 
Les listings proposés soi 
tés sur 40 colonnes. L'ei 
t bien structuré.. 



it à rechercher les 



l'être v 



( programmes après sa lecture. 




TP* 



"BASIC AMSTRAD CPC 464 - METHODES 
PRATIQUES" 

J. BOISGONTIER M B. CESARD 
PSI 
100 F 

Ce livre de 165 pages comporte deux par- 
ties : la première explique la prise en main de 
la machine puis détaille, exemples à l'appui, 
toutes les focntions du Basic AMSTRAD clas- 
sées par familles. Ainsi, le chapitre 4 ne traite- 
t-il que du découpage des programmes. On 
y apprend tout sur les sous-programmes et 
les branchements multidirections. Pour cha- 
que instruction, on trouve un court pro- 
gramme d'application avec la recopie de 
l'écran après son exécution. Le chapitre le 
plus intéressant est, à notre avis, celui qui 
traite des graphismes et des sons. Les peti- 
tes routines décrites pourront être incorpo- 
rées dans les programmes qu'écrira le lecteur. 
La deuxième partie de l'ouvrage contient une 
quinzaine de programmes plus longs, mettant 
en pratique les instructions étudiées au cours 
des chapitres précédents. Dix d'entre eux 
sont graphiques et les autres plus utilitaires : 
fichier d'adresses, gestion de fichiers auto- 
matique, masque de saisie d'écran et biblio- 
thèque. Ce livre vient en complément du 
manuel livré avec la machine, et le débutant 
pourra, pour peu qu'il se donne la peine de 
taper les exemples donnés, comprendre plus 
facilement le Basic d'AMSTRAD. 



BASIC AMSTRAD 
CPC 4M 




ffifl 



* M E R G I 

= MERCITEL 




FICHE TECHNIQUE SIMPLIFIEE 

Microprocesseur Z 80 A DART 

ROM 27128 128 K bits 

Normes de Sortie RS 232 C 

Vitesses programmables de 75 à 9 6O0 baud. 

30 Instructions BASIC de TELECOM en RSX 
Transmission /Réception de fichiers 

Emulation da Terminal 
Emulation MINITEL 



890 F 




TTC 



CONTROLEUR 

La Sécurité des procédures de 
Telecomunication PROFESSIONNELLE 
Asynchrone sur votre AMSTRAD 
CPC 464 - CPC 664 - CPC 6128 

des la 1 



23, rue de la Mouchetière 
S.A.R.L. capital 100 000 F 



2.1. INGRÉ 45140 Saint-Jean-de-la-Ruelle 
R M 22 933 881 450 S I R E T 329 338 818 00019 



Tél. 38.72.22. 
Code APE 2701 




OPUS, 

UN EDITEUR HEUREUX ! 

NORSOFT a vu le jour en janvier 
1 984, en pleine période de crise, 
ce qui était hasardeux. 



Toutefois, la naissance de 
TYRANN, jeu sur ORIC-1 et 
ATMOS fut un succès et devint 
vite le cheval de bataille de cette 
jeune société. Depuis, ses logi- 
ciels sont adaptés sur AMSTRAD 
(et sur d'autres machines) en 
français, allemand et anglais. 
Depuis 1985, 11 programmeurs 
ont rejoint l'équipe. OPUS qui est 
le vrai nom de la société (NOR- 
SOFT est en fait une marque) dis- 
pose d'une structure légère donc 
pouvant prendre de rapides déci- 
sions. 

Fidèle à sa politique, OPUS sou- 
haite maintenir ta qualité et sor- 
tir de nouveaux produits dont 
TYRANN II. 

Le siège de la société se trouve 
en bord de mer, à Caen. Les 



contacts se font plus particuliè- 
rement par téléphone, tant avec 
les clients qu'avec les program- 
meurs. 

Rémy GOSSELIN, le gérant, s'oc- 
cupe plus particulièrement des 
auteurs dans un climat de 
confiance, synonyme d'effica- 
cité. La confiance est nécessaire 
puisque si le projet est bon, la 
société n'hésite pas à mettre en 
prêt du matériel. Il n'est même 
pas rare que la décision soit prise 
de financer une partie du projet. 
M. WYST RACH s'occupe, lui, de 
la programmation, de l'adaptation 
et de la traduction. 
Extérieur à la société, D. FALUE 
a pris en charge le graphisme et 
la publicité. 

Les auteurs ? J.P. AMET, L. 
BLONDEL, J. BRUNET, E. CHE- 
VALIER, Th. DURAND, Ch. 
HUGEL, Ph. MARTI, G. SAVI- 
ARD, P. ALLAIN, E. MASSON, 
Ch. TRIBOUILLARD. 
Le mois prochain, nous vous pré- 
senterons un autre éditeur, celui 
de votre revue. 



BANC □' ESSAI 



"GUTTER" 

(ERE INFORMATIQUE) 

Si vous en avez assez de jouer les extra- 
terrestres solitaires, peut-être voudrez-vous 
devenir, pour un temps, une boule d'acier 
dévalant uns gouttière ? 
C'est le thème de ce nouveau jeu d'ERE. 
Vous dirigerez la baballe avec deux touches 
du clavier Inon redéfinissables], et il vous faut 
écraser (pacifique, hein ?| des "figures 
médiévales" (rois, dames et fous), en évitant 
les moines qui vous ramènent au début de 
la gouttière et les bourreaux qui vous font 
perdre la boule (!). 

Même si le graphisme est agréable {la pers- 
pective du damier du décor avançant est très 
bien rendue) et, si l'animation sonore est rela- 
tivement bonne, cela ne fait pas pour autant 
oublier la monotonie du jeu, Celui-ci est en 
effet trop facile, et le difficulté n'augmente 
pas beaucoup au cours du jeu. 
La boule est dirigée par deux touches, mais 
la pesanteur tend à la ramener au centre de 
la gouttière. Des objets magiques vous per- 
mettent de changer de gouttière lia couleur 



du damier extérieur indique la gouttière sur 
laquelle vous vous trouvez). Une originalité 
cependant : le jeu compte les points comme 
un flipper, avec extra-balle et spécial. 



de par se simplicité d'emploi e 
Graphisme = 3, animation = 
intérèt = 2 (1), originalité = 3. 



"BUGS-BUSTER" 
(FREE GAME BLOT) 
En français 

Un voyage au cœur de votre ordinateur et 
sans perdre la garantie, voilà ce que propose 
ce programme. Au fait, pourquoi vouloir exa- 
miner le circuit imprimé et ses circuits inté- 
grés ? Et bien tout simplement parce qu'il 
vient d'être envehi par sept cafards destruc- 
teurs de logiciels répondant aux doux noms 
de Rob, Rab, Horb, Carb, Song, Grab et 
Sicob. Chacun d'eux a sa spécialité : Song, 
comme son nom l'indique, détruit les datas 




musicales. 



correspondant è des ir 
Rab efface carrément le i 
mémoire RAM. Quelle calamité I Heureuse- 
ment, vous êtes là, muni de votre laser et de 
votre localisateur de bugs. Vous pouvez 
môme placer des trapper s permettant de les 

Une idée originale pour un jeu qui, par cer- 
tains aspects, ressemble à un "Donjon et 
Dragon". L'écran est divisé en fenêtres : à 
droite, le plan du circuit imprimé, où un point 
clignotant matérialise votre position. Au som- 
met de l'écran, nous trouvons la zona de dia- 
logue, et au milieu, une représentation en 3D 
de ce que vous voyez. Les graphismes en "Fil 
de fer" sont un peu sommaires, mais on s'y 
retrouve. Nous avons trouvé ce jeu assez 
stressant car, pour venir à bout des cafards, 
il faut combiner dextérité manuelle et raison- 
nement intellectuel. Au début, tout se déroule 
si vite qu'on est dépassé par l'ampleur des 
dégâts, mais on acquiert vite de l'expérience 
et le jeu devient alors plus intéressant. 
Graphisme = 3, animation- 3, son = 2. 
Intérêt = 3. 



"INFERNAL RUNNER" 

ILORICIELS) 
En français 

Le sujet n'est pas très original. C'est le per- 
sonnage qui doit trouver les clés pour sortir 
de le bâtisse infernale. Il est gâté, le pauvre ! 
Jugez plutôt : lasers, plaques électrifiées. 
monstres, barrières de feu, tapis et escaliers 
roulants, bains d'acide, mines, compres- 
seurs, herses, etc. Avec, en plus, les culs- 
de-sec d'où il ne peut repartir ! Pas facile, ce 



egraphisi 



En revanche, n . . . . 
LORICIELS : dessins de grande fi™ 
le souci du menu détail, au pixel près ! Ceci 
concerne aussi l'animation, jamais saccadée 
et toujours réaliste. Par exemple, les positions 
et les mouvements du personnage, quand il 
grimpe notamment. Autre petite merveille : 
les jets de flammes horizontaux, Walt Disney 
n'aurait pas fait mieux... 
La musique est riche, originale mais à la lon- 
gue lancinante. 

En bref, de très belles images, mais un jeu 
qui, à mon avis, manque un peu d'originalité ; 
un super "Manie Miner" avec des tableaux 
très variés et des "épreuves" originales. 
Graphismes, animation = 5, sort-2 
Intérêt = 3. 



"EASI AMSCODE" 
(AMSOFT) 
Utilitaire 
149 F 

Cet utilitaire s'adresse à tous ceux qui débu- 
tent en langage machine et qui cherchent à 
en percer les tout premiers secrets. Grâce è 
lui, vous écrirez vos tout premiers octets en 
langage Z80 et pourrez exécuter vos premiè- 
res lignes de programme sous le contrôle 
d'un moniteur. 

EASI AMSCODE sait charger un fichier lou 
sauvegarder], "désassembler" (dommage 
que ce soit seulement pas à pas) , c'est-à-dire 
produire la liste des mnémoniques correspon- 
dants au langage machine, "dumper" le 
mémoire sous formes ASCII et hexadécimale, 
que le programme soit en RAM ou en ROM . 
Il est également possible, et c'est là que les 
débutants apprendront beaucoup, de lancer 
et exécuter un programme en pas â pas, cha- 




Pour être complet, il faut également savoir 
qu'EASI AMSCODE permet le sortie de lis- 
tings, dumpés ou désassemblés, sur une 
imprimante. 
Quelques petits points gênants, comme 

du menu, ou l'ahsence de désassemblageen 
continu, se feront vite oublier des débutants 
qui découvriront, avec intérêt, le fonctionne- 
ment du ZBO. 

Au fait, pourquoi EASI... avec un I ? 
Graphisme = 3, Animation = 2, Son = 3, 
Intérêt = 3. 



"WARRIOR" 






(RAINBOW) 






Jeu de rôle 






160 F 






WARRIOR est un jeu de rôle 
çeis. Nous avons reçu et es 

complète, sera bientôt mise 
Les énigmes et graphismes se 
Après un générique musical 

un dessin de présentation 


écrit en fran- 
quette, plus 
ont différents 

n contemplant 
appelant une 



mélange de graphisme (de type 

de texte. Le tout apparaît dans 

fenêtre encadrée par un décor un peu 



"théâtral", du 




bel effet. L'action se 


passe dans une 




e de labyrinthe, reliant 


plusieurs salles 




nt de vous y engager, 


pour y rechercher 


combattre et tenter 


d'anéantir GRAVEN, 


jn monstre qui terrorise 


le pays, vous ferez vo 


s petites emplettes chez 


le "quincaillier' 


du 




quoi combattre 
















pas mal dessinés] qu'il 


7«'n"tvÔ°, 


po!" 


re. Si vous n'êtes pas 
ez parlementer ou fuir. 


Les combats vo 


sts 


ont entendre des bruits 


suggestifs, tout 
topêes apparais 


sanl 


ant ponctués d'onoma- 


Pour les amate 


rs d 


i ce genre de jeu... 



(Anecdote : le rapprochent 

RIOR" et de l'éditeur "RAINBOW" avec d€ 

événements récents est, paraît-il. du plus pi 

hasard. La cassette était déjà prête avant le 

faits). 

Graphisme = 3, animation = 2, son = ; 

intérêt = 3. 



"3D FIGHT" 
(LORICIELS) 

En français 

Vous pilotez un vaisseau spatial au ras d'une 
planète hostile. Du déjà vu ? Pour le sujet oui, 
mais pas avec une si belle animation 1 Tout 
est soigné, la finesse du graphisme, le son, 
la nervosité du joystick. Heureusement, car 
il n'y a qu'un seul niveau et il est assez 



Vous voyez votre vaisseau de dos et vous le 
déplacez dans les quatre directions, tandis 
que le paysage fonce sur vous. Cette tech- 
nique d'animation rappelle celle de "RALLY 
II" (même éditeur) mais en mieux encore. 
Vous devez ébattre le maximum d'astronefs 

d'être dans leur angle de tir. Attention I cer- 

vous prévient, ., Le plus dangereux est la pluie 
de météorites, de superbes boules de feu. Un 
conseil : mettez-vous dans l'angle en haut à 
gauche et laissez passer l'orage 1 

Le risque est de tomber en panne de fuel. 
Pour éviter cela, il faut détruire des réserves 
de carburant au sol (drôle d'idée). On ne peut 
les atteindre qu'en mitraillage en rase-motte, 
puis en redressant au dernier moment, afin 
de ne pas les percuter. Aussi, je placerais ce 
logiciel non pas dans les "arcades soucou- 
pes", mais plutôt dans les simulateurs de vol, 
A mesure que l'on progresse, le paysage Itrès 
stylisé) change, Il faut noter que l'animation 

Le son est excellent et omni-présent ; pen- 
sez à baisser le volume après 22 heures... 
Un jeu très "enlevé" qui plaira beaucoup aux 

• K, son = 3 à 4. 



"ASSEMBLEUR DR. WATSON" 
(MICRO APPLICATION) 
En français 



t un ensemble livre + cassette pour t 
S l'assembleur. Le livre, bien épais 
e clarté remarquable et s'adressi 



Cfur 



commençant par les choses simples, assor- 
ties de petits exemples très courts. Pour les 
mettre en pratique : l'assembleur de la face 
A de la cassette. Certes, il n'a pas la puis- 
sance du fameux "Zen", mais il a la clarté 
du livre. On est obligé de comprendre ! C'est 
l'auto-école de l'assembleur. A l'écran, un 
menu len français) que l'on peut rappeler à 
tout moment ; c'est sécurisant. Il comporte 
le strict nécessaire, plus des "planches de 
salut" pour débutants. 
Les options du menu sont présentées dans 
l'ordre chronologique normal ; entrée du 
"texte", listage, correction de ligne, assem- 
blage, qui signalera les lautes de syntaxe 
avec le numéro de ligne, sauvegarde, char- 
gement, renumérotation, listage sur impri- 

Basic et de revenir au WATSON ; et enfin, 
essai par CALL (toujours sauvegarder 
avant... ). Signalons un bug de taille dans 
l'option imprimante : parfois le listing est 
complètement décalé à gauche avec perte de 
caractères, C'est dommage et peu pardon- 
La lace B de la cassette illustre des petits pro- 
grammes présents dans le livre, tels quelques 
"RSX" comme CIRCLE, BOX et TRIANGLE 
(pas terribles... ). 

J'estime que c'est un chef-d'œuvre de péda- 
gogie, car expliquer l'assembleur est chose 
très difficile si on ne veut pas décourager le 
lecteur. L'auteur, Tim HERBERTSON, n'est 
pas tombé dans la facilité de la "logique uni- 

cer par le comptage binaire ! Il en parle bien 
plus tard, et juste ce qu'il faut. Ainsi, c'est 
buvable... Le prix de 195 FF pour l'ensem- 
ble est, lui aussi, facile à avaler. 
Performances = 2, clarté = 5, intérêt = 5. 



LOGICIELS^ 

D'DUTRE-MAIMCHE- 



est protégée par des dispositifs anti-intrusion 
parmi les plus sophistiqués. 
Il faudra les anéantir un par un pour progres- 
ser. Heureusement, votre hélico (le plus 
moderne qui soitl est armé en conséquence. 



Ieus vous proposerons, dans cette rubrique, une sélec 
tien mensuelle de logiciels (jeux ou utilitaires) venus 
d'Angleterre. Ne croyez pas qu'il vous faudra traver- 
ser le CHANNEL pour vous les procurer : ils sont disponibles 
en France et pour la plupart importés par GUILLEMOT 
INTERNATIONAL SOFTWARE. 



"BEACH HEAD" 
(ACCESS) 
En anglais 

Genre wargame, mais un vrai. Enfin ! L'ani- 
mation est irréprochable, la jeu est très varié, 
les tableaux nombreux et très différents. Le 
graphisme est super soigné ef le son est "réa- 
liste". Bref, un chef d'oeuvre artistique et 
technique, a ranger à la place d'honneur a 
côté de Sorcery... 

Il s'agit d'un débarquement. Premier tableau : 
une carte, vous dirigerez votre escadre, soit 
vers l'entrée de la baie, soit vers un étroit 
goulet où il faudra se faufiler entre minss et 
torpilles. Avantage : vous surprenez l'ennemi. 
Deuxième tableau : vous subissez une atta- 
que aérienne et vous commandez votre DCA. 
C'est mon passage préféré car l'animation est 
splendide I Les avions surgissent de l'hori- 
zon, deviennent très gros (et détaillés) puis 
décrochent en haut de l'écran. On règle notre 
DCA en site et azimut. Si vous êtes passé par 
le goulet, les avions seront moins nombreux. 
Troisième tableau : la bataille navale avec les 
bateaux qui vous restent encore. En face, les 
bâtiments ennemis I des distances différen- 
tes. Vous réglez votre canon avec précision 
(en degrés par le joystick). Ce n'est plus du 
tir an rafale I Si le coup est trop court, on voit 
le "trou dans l'eau", et la distance d'erreur 
est indiquée pour corriger le tir. Ce n'est plus 
un jeu d'arcade, mais de "pifométrie". Très 

Quatrième tableau ; si vous sortez vainqueur 
du combat naval, c'est le débarquement. 
Chacun de vos navires rescapés {il y en avait 
dix au départi débarque deux chars qu'il faut 
piloter sur le terrain. On retombe alors dans 
le jeu d'arcade. Après cette dure traversée 
de casemates, ils arrivent en face de la for- 
teresse à détruire. Pas facile d'arriver jusque 
le avec suffisamment de chars ! 
La notice est copieuse, mais elle est hélas en 
anglais. 







:r chacun à 
able (il faut 



Le piloter dans le 
plus, il faudra tri 



Sachant que l 'hélico n'est 
constamment agir sur les commandes pour 
le maintenir en vol horizontal) et que les gou- 
lets sont étroits, nous vous laissons imagi- 
ner ta difficulté de l'entreprise. 
La réalisation est excellente avec une présen- 
tation et des graphismes soignés. Le jeu n'est 
pas facile et exaspérera les débutants, 
ATTENTION ! le joystick est indispensable ! 

"AIR TRAFFIC CONTROL" 

(HEWSON CONSULTANTS) 

Simulation 

86 F (cassette) 



Tout le monde ci 



"AIRWOLF" 

(AMSOFT) 

Arcades 

Support cassette 109 F 

Support disque 135 F 

Avez- vous déjà piloté un hélicoptère dans i 



is contrôleurs de tra- 
fic aérien, pour en avoir entendu parler à l'oc- 
casion d'une grève ou simplement pour avoir 
lu des reportages sur leur travail. Certains ont 

conversations avec les pilotes d'avions. 
ATC simule le situation d'un contrôleur dans 
un grand aéroport : Londres-Heathrow et 
Amsterdam- Schi pool. 

Simulation très réaliste, ATC vous mettra 
dans la peau du contrôleur et vous ressenti- 
rez la même tension nerveuse. 
Il y a plusieurs niveaux (de 1 à 81 et un démar- 
eillé pour s'habituer 



n radar de \i 







L'écran représ 
d'approche av 



strips" des volsa> 

e ("holding-stock"! où apparai 
l'identification radar, le type d'appareil, son 
niveau de vol, son cap, sa vitesse. En haut 
de l'écran, la zone de dialogue radio sur 
laquelle s'affichent les ordres que vous don- 
nez aux différents appareils. 
Il y a 5 types d'appareils différents, du 
Concorde au Navajo, ce qui implique des 
réactions différentes à vos ordres. 
Le but du contrôleur est de poser 10 avions 
en 30 minutes. Vous serez noté sur la rapi- 
dité et la sécurité avec lesquelles vous aurez 
agi. Pour poser un avion, il faut le mettre cor- 
rectement dans l'axe de piste (aides radio, 
localizer et glide). Il y aura lieu de tenir 
compte, aux niveaux de difficulté les plus éle- 
vés, de l'espacement dans le temps et dans 
l'espace, des avions. Les derniers niveaux 
présentent des situations identiques à celles 
que peut rencontrer un contrôleur aérien. 
Excellente simulation, la seule dans le genre, 
ATC devrait satisfaire les passionnés d'avia- 
tion qui ont envie de se mettre à la place d'un 
contrôleur. 




COMMODORE 54 • SPECTRUM • AMSTRAD • THOMSON MO 5 %& S /*» 
ORIC-ATMOS • IX 81 • MSX • APPLE II • ATARI yntA^- TT 



S5S,: S 

ffiuftyj, ;: 
lîffir il 

jjsfp""""' '«! 

iËTT' 's: 







S5&"* 



p,mut» oT 

nalSoW» 




^^m^msm 



Je Joins □ Chèque Bancaire 

i l Mandat lettre n Contre rembours -,■ 

(Ajouter 15 F delraTs) mlt , eo „ s „„ . *,„,„, 

1) vous choisissez 6 titres, le moins cher est gratuit — Livraison sous 
18 Ii pour tous les produits en stock — Tous nos logiciels sont garan- 
is un an — Revendeurs. Clubs, nous consulter ! 



,.» c .,„■. 



Pour l'étranger : 35 Francs Be port 



INITIATION : 

LES TABLEAUX 
DIM 



Michel ARCHAMBAULT 





1 Ine des richesses du Basic, 
l^des possibilités que le débu- 
tant ne soupçonne pas, mais 
aussi une source de pièges si on 
ne respecte pas certaines règles 
(très différent du DIM du SINC- 
LAIR ZX81). 


""' ,^ 


DEFINITION 

C'est un groupe de variables que 
l'on numérote afin qu'elles soient 
plus faciles à manier et aussi à 
baptiser ! Exemples : Ees douze 
mois de l'année. On pourrait les 
définir ainsi : A$ - "janvier":B$ = 
"février":C$ = etc.. pénible ! 
Groupons-les dans une liste 
numérotée {on dit aussi INDI- 
CEE). M$(1) = "janvier":M$(2) = 
"février": etc.. Ce sont des 
"variables indicées". 
Si l'indice ne dépasse pas dix, 
tout se passe bien, au-delà {et 
c'est le cas pour les douze mois), 
il est obligatoire de le signaler a 
l'avance : une réservation de 
place. 

DIM M$(12) à mettre dans les 
toutes premières lignes du pro- 
gramme (une sage précaution), 
même si l'on ne s'en sert que 
beaucoup plus loin. 
S'il s'agissait des sept jours de la 
semaine, vous pouvez vous 


dispenser de déclarer au début 
DIM J$|7), mais sachez (qu'à 
votre insu) l'ordinateur va créer 
un DIM M$(10) à l'instant même 
où vous entrerez J$(1 ) = "Di- 
manche"... D'où un petit gaspil- 
lage de réservation dans la 
mémoire. 

Tout cela est bien sûr valable 
pour les variables numériques. 
Dans nos deux exemples, il 
s'agissait de simples listes à une 
seule "colonne", mais on peut 
définir un tableau à plusieurs 
colonnes. Il faut bien sûr décla- 
rer le nombre de ces colonnes. 
Autrement dit, il faut déclarer les 
DIMENSIONS (DIM vient de là) 
du tableau. Exemple : 

- DIM NOM$(80,3) signifie 80 
lignes et 3 colonnes, soit 
80x3 = 240 variables chaînes 
différentes. 

- N0M$(24,2) désigne la chaîne 
se trouvant en ligne 24, colonne 
n° 2. 

- Seul le programmeur connaît 


le nom de la rubrique-colonne. 
Exemple n° 1 = NOM, n° 2 = pré- 
nom, n° 3 = adresse. Il a même 
intérêt à le noter dans un REM 
afin de ne pas l'oublier ! En effet, 
si vous entrez NOM$(32,3) = 
"Georges", il n'y aura pas de 
"syntax error"... 

INDICE ET COLONNE ZERO 

Ils existent bel et bien ! Ainsi, 
notre DIM NOM$(80,3) va de la 
ligne à 80 et de la colonne à 
3, soit au total 81x4=324 
emplacements et non pas 
240 !... Quel gaspillage. Puisque 
nous ne voulons que trois colon- 
nes, il fallait déclarer DIM NOMS 
(80,2) avec n°0 = nom, n°1 = 
prénom, n°2 = adresse. Quand 
nous avions écrit DIM M$(12), 
l'ordinateur l'a interprété comme 
DIM M$( 12,0), et il n'y a qu'une 
seule colonne ; mais treize lignes. 
En étant radin, on aurait pu 
annoncer DIM M$(11) et entrer 



M$(0) = "janvier"... M$(11> = 

"décembre". Ici, c'est dommage 

puisque l'indice n'est plus égal au 

"numéro" du mois. 

Dans la pratique, voilà ce que l'on 

fait : 

On "récupère" la colonne zéro, 

mats on n'utilise pas la ligne zéro. 

Pourquoi ? 

— parce que le plus souvent les 
lignes sont bien plus nombreuses 
que les colonnes ; 

— parce que la ligne zéro est sou- 
vent utilisée pour y copier provi- 
soirement une va\eur, une "case 
transit", un refuge. C'est ce qui 
se passe dans le classique "tri à 
bulle". La "bulle" est justement 
la ligne zéro, et cela clarifie l'écri- 
ture du tri ; 

— parce que dans un tableau de 
valeurs numériques, il est plus 
clair de loger en ligne zéro les 
totaux des valeurs de chaque 
colonne... 

En effet, il est fréquent que l'on 
définisse un nombre maximum de 
lignes, une sécurité, une pré- 
voyance, en estimant que le 
tableau ne sera jamais complète- 
ment rempli. Si un numéro de 
ligne a dans le programme une 
signification bien précise (exem- 
ple : les totaux sur les lignes rem- 
plies), il est logique que ce soit la 
première, donc la zéro. OK ? 

LA TROISIEME DIMENSION 

Dans l'esprit, on voit notre DIM 
NOM$(80,2) comme un tableau 
dessiné sur une feuille de papier, 
mais que représenterait un DIM 
NOM$(80,2,2) ? Tout simple- 
ment trois feuilles-tableaux ayant 
les mêmes quadrillages et les 
mêmes noms dé rubriques. 
Par exemple, chaque feuille est la 
liste des membres de votre club, 
mais n°0=1984, n°l=1985, 
n°2=1986. 

Ces tablaux à trois dimensions 
(trois paramètres) sont plutôt uti- 
lisés avec des variables numéri- 
ques car ils simplifient l'écriture 
de certains calculs. Un exemple : 

DIM VENTE(24,5,3) 

représente 24 articles, 5 maga- 
sins, 3 années. Tous les indices 
zéro sont des totaux (lignes, 
colonnes et feuilles). La colonne 
n° 2 désigne le magasin de Tou- 



louse. Par des boucles FOR 
NEXT, on a rempli les cases de 
la feuille zéro en totalisant les 
cases correspondantes des feuil- 
les 1, 2 et 3 (1983, 1984, 
1985). On veut savoir combien 
Toulouse a déjà vendu d'articles 
n° 9 : PRINT VENTE (9,2,0). 
Quel pourcentage cela représente 
sur l'ensemble de nos cinq maga- 
sins ? 

PRINT 100"VENTE(9,2,0)/ 
VENTE(9,0,0);"?" 

Dès que ce "tableau cubique" 
est en RAM, vous voyez qu'on 
peut se livrer aux statistiques les 
plus folles et en une seule ligne 
de Basic. 

L'ENCOMBREMENT MEMOIRE 

Reprenons notre DIM VENTE(24, 
5,3). Combien de variables ? 
25x6x4 = 600. S'il s'agit de 
nombres réels, cela fait au moins 
600 x 5 = 3000 octets, si ce sont 
des nombres entiers (non déci- 
maux et inférieurs à 32767), ce 
n'est que 600 x 2 = 1 200 octets. 
C'est peu, mais notre DIM ne 
comportait que 24 lignes... 
Si au lieu de nombres il s'agit de 
chaînes, c'est pire encore car il 
faut compter un octet par carac- 
tère. Même si le tableau n'est pas 
rempli I N'oubliez pas que vous 
avez réservé sa place en début de 
programme ! 

Comment éviter des gaspillages 
d'octets ? 

— Pour entrer des chaînes, 
calibrez -les après chaque INPUT. 
Exemple avec coupure à 12 
caractères maxi : 

IF LEN(C$) > 1 2 THEN C$ = LEFT 
(C$,12) 

L'absence de calibrage est dan- 
gereuse, car si une seule chaîne 
est très longue (40 caractères 
pour une adresse), la réservation 
mémoire va faire un bond en 
grosseur... 

— Pour un grand tableau de 
valeurs numériques, essayez 
d'utiliser des nombres "entiers". 
Pas toujours facile ! S'il y a obli- 
gatoirement des nombres déci- 
maux (2 décimales) et s'ils sont 
toujours inférieurs à 320, 
multipliez-les par cent ; mais 
n'oubliez pas l'opération inverse 



pour les utiliser... Autre gymnas- 
tique qui porte le maximum à 640 
(s'ils sont toujours positifs) : 

N%(l,J) = NB*100-300 
(% — entiers) 

Opération inverse : 

NB = (N%(I,J) = 320)/100 

Ces manoeuvres sont payantes 
car l'encombrement mémoire 
passe ainsi de cinq à deux ! 

LES FAUTES CLASSIQUES 

La plus banale est le "Array 
already dimensioned" (Array = 
tableau). Voici pourquoi : assez 
loin dans votre programme, vous 
avez eu besoin d'un DIM, et vous 
le déclarez dans les lignes 3000, 
puis vous le remplissez ; jusqu'à 
là aucun problème. Puis, en tritu- 
rant votre listing, vous ajoutez 
des GOTO par ci par là ; le dérou- 
lement du programme va donc 
passer une seconde (et der- 
nière I) fois sur la déclaration du 
DIM, il n'aime pas cela et il 
plante. 

De grâce, ne disséminez pas vos 
DIM dans le listing : groupez-les 
en une seule ligne en tout début 
du programme. Trois raisons à 
cela : 

— ils sont à l'abri d'un GOTO 
planteur ; 

— pour s'assurer de leur tailles 
(ou les modifier), on les retrouve 
immédiatement en ligne n° 50 ou 
n° 100 ; 

— c'est plus vite écrit, car une 
virgule remplace ":DIM". Exem- 
ple : 

100 DIM NB(80,2), NOM$(24, 
3),LT%(50,1) 

Autre code d'erreur, le "Sub- 
script out of range", quand vous 
demandez un numéro de ligne ou 
de colonne plus grand que les 
limites fixées. La cause est sou- 
vent une "incrémentation" d'in- 
dice sans surveillance. Exemple 
classique : le remplissage d'un 
DIM NOM$(30) par des INPUT, 
en ne connaissant pas le nombre 
de variables que l'on va effecti- 
vement y mettre : 

400 1 = 1 + 1 

410 INPUT N0M$(l) 

420 IF NOM$(l) = "Q" THEN 500 







mmmm^mÈ 










,:. .. ■ ■ ■■■■.■■■.■ 








430 GOTO 400 

500 'Suite du programme 

Trois belles gaffes : 

— emporté par votre élan, vous 
tentez d'entrer un 31° nom : 
plantage ; 

— vous vous arrêtez au dou- 
zième, mais le treizième nom 
n'est pas vide, il s'appelle 
"Q"... ; 

— vous savez que vous venez 
d'entrer le 30° et dernier nom et 
déjà le code d'erreur apparaît en 
ligne 410, car il refuse INPUT 
N0M$(31). 

Voilà, un bon petit exercice : 
essayez de réécrire ce passage 
tout simple pour qu'il soit sans - 
défauts (testez-le avec un DIM 
plus petit). 

LA COMMANDE ERASE 

Supposons que vous n'ayez plus 
besoin de l'encombrant DIM NB 
1200,3} et que vous souhaitez 
récupérer son espace mémoire à 
d'autres fins. Il suffit d'écrire : 


ERASE NB 

Toutes ses variables n'existent 
plus et DIM NB(200,3) non plus. 
Vous pourriez même le redéfinir 
en DIM NB<20,2)... (le cas est 
rare). Attention à la faute de 
syntaxe du genre ERASE 
NB(200,3). Seul le nom de la 
variable suit ERASE, sans paren- 
thèses, ni paramètres. 

TABLEAUX A DEUX 
TYPES DE VARIABLES 

Si le DIM annoncé concerne des 
variables chaînes, on ne peut y 
introduire des nombres et vice- 
versa. Or, ce besoin est courant, 
exemple, notre tableau NOMS 
où, en plus des colonnes nom, 
prénom, adresse, vous voudriez 
ajouter des variables numériques 
(année de naissance, montant de 
la cotisation au club, etc.. ). 
Comment faire ? Deux solutions : 
— Transformer vos nombres en 
chaînes par la fonction STR$. 
C'est simple mais encombrant en 


mémoire et lourd à manier s'il y 
a des calculs à faire (par la fonc- 
tion VAL). 

Créer un autre tableau DIM, 
numérique celui-là, mais dont les 
numéros d'indices vont corres- 
pondre. Exemple : DIM NOM$ 
(80,2), NOM%(80,3) soit pour 
chaque individu ( = ligne) trois 
variables chaînes plus quatre 
variables numériques de seule- 
ment deux octets chacune. 
Ah 1... Vous dites qu'il faudrait 
une cinquième variable numéri- 
que qui ne peut être un nombre 
entier, donc "réel" à cinq 
octets ? Rien de plus facile, on 
ajoute simplement DIM NOM 
(80), et Basic y reconnaîtra les 
siens. 

CONCLUSION 

Nous pensons qu'à présent les 
tableaux DIM n'ont plus de 
mystères pour vous, et que ces 
règles, méthodes et astuces vous 
seront très utiles pour concevoir 
vos programmes. 



NOUVELLES DE SUISSE 

Sémaphore Logiciels et Gillsoft 
International Ltd. — les créateurs 
gallois du célèbre programme 
"The Quill" — ont conclu un 
accord aux termes duquel les 
deux sociétés collaboreront à la 
production de la version française 
du programme sur l'AMSTRAD, 
qui sera mis en vente dès janvier 
1986. 

Ce programme de création 
d'aventures qui a été vendu à plu- 
sieurs milliers d'exemplaires en 
Angleterre, en Allemagne et en 
Scandinavie, sera réécrit dans 
l'optique de la mystique des 
légendes et chansons de geste 
françaises. 

L'utilitaire graphique "The lllus- 
trator" qui permet de créer et 
d'introduire des illustrations dans 
les aventures produites avec 
"The Quill" sera aussi traduit et 
publié par Sémaphore. 
Plusieurs aventures créées avec 
Quill ont été publiées avec suc- 
cès. Une des caractéristiques du 
programme étant qu'aucun droit 
d'auteur n'est demandé pour 
cette utilisation. 
Un autre accord de collaboration 



a été passé avec Hisoft qui verra 
la publication en français, au 
début de 1 986, des célèbres pro- 
grammes pour l'AMSTRAD : 
Hisoft "C" et CP/M 80 "C" 
Hisoft 'Devpac 80" CP/M 
(assembleur/désassembleur) 
Hisoft "Pascal" et CP/M 80 
"Pascal". 

Ces logiciels sont considérés par 
la presse spécialisée anglaise 
comme des classiques dont la 
qualité n'a d'égal que le service 
après-vente offert par la maison 
Hisoft. 

Les autres programmes de cet 
éditeur anglais seront traduits 
dans le courant de l'année pro- 
chaine, et Sémaphore Logiciels 
assurera le service et la mise à 
jour pour les pays de langue fran- 
çaise. 

GONFLEZ VOS MACHINES 

La SARL JAGOT & LEON vous 
informe de l'industrialisation 
d'une nouvelle carte d'extension 
pour les ordinateurs AMSTRAD 
(CPC464, 664 et 6128). 
Il s'agit d'une extension mémoire 
de 64 k-octets se présentant 
sous la forme d'une disquette 



électronique, similaire à celle du 
CPC 6128. Son prix de vente 
public est fixé à 800 F TTC. Elle 
nécessite l'utilisation d'un cordon 
de liaison pour la relier à l'ordina- 
teur d'une valeur de 1 50 F TTC. 
Ce cordon peut être employé 
pour tous les autres périphériques 
Jagot & Léon. Renseignements 
au7^3^^32^^^^^^^ 
NOUVEAUTES 

LORICIELS 

(disponible) 

LORIGRAPH, excellent logiciel de 

création graphique avec menu 

iconographique. 
COBRA SOFT 
(disponible) 

DOSSIER G, ou les suites de l'af- 
faire du Rainbow Warrior sous 
forme d'enquête. 
ERE INFORMATIQUE 
(sortie prévue prochainement) 
EDEN BLUES, jeu d'aventure 
interactif, entièrement animé et 
en 3D. 

CONTAMINATION, fiction. Vous 
luttez contre la propagation d'une 
épidémie grave. 

KRAFTY et XUNK, dessin animé 
interactif en 3D. 




EST QUOI 

leCATAMSTRAD: 



r> logiciels utilitaires 
r> logiciels de jeux 
Ç> logiciels éducatifs 
0- accessoires 



r> interfaces 
r> imprimantes 
r> livres 

r> ... 



C'est le C AT Alogue d'aMSTRAD 

enfin disponible. 



43.38.60.00 



"J'ai attrapé 
une souri 



fttf mstrad Computer Show de Londres nous a donné /'occasion 
Sgl de découvrir la souris AMX pour AMSTRAD développée par 
*"* I Advanced Memory Systems. Non seulement de découvrir, 
mais aussi de rapporter en France un exemplaire de présérie de la 
bête pour en effectuer un essai complet, ceci au grand dam de nos 
confrères britanniques qui durent se contenter de la tester sur le 
stand. 



Dans un emballage marqué BBC 
MICRO {l'emballage AMSTRAD 
n'était pas encore prêt), nous 
avons trouvé une souris, un boî- 
tier d'interface et une cassette. 
La souris est constituée d'un boî- 
tier noir tenant bien en main, d'un 
câble souple d'environ 1 , 50 m et 
d'un connecteur à verrouillage, se 
branchant sur le boîtier interface. 
Sur la face avant du boîtier, nous 
trouvons trois poussoirs de cou- 
leur rouge servant à exécuter un 
ordre, à annuler un ordre et à 
déplacer des dessins sur l'écran. 
Sur le dessous, nous trouvons la 
sphère métallique qui roule sur la 
table et quatre petites sphères de 
nylon situées aux quatre coins et 
destinées à faciliter le déplace- 
ment du boîtier. 
Etant depuis longtemps utilisa- 
teur de la souris APPLE, nous 
avons effectué une comparaison 
des deux modèles. Voici, en vrac, 
nos impressions : 

— la souris APPLE est plus jolie, 
mais ça se discute, 

— la boule métallique d'AMX ne 
prend pas la poussière, contrai- 
rement à la boule en caoutchouc 
d'Apple qui encrasse les rou- 
leaux. 

— le cordon AMX est plus sou- 
ple, 

— la souris AMX glisse mieux sur 




Marcel LE JEUNE 




la table. On peut même dire 
qu'elle roule, 

— le branchement Apple est plus 
élégant car l'interface est incor- 
porée à l'ordinateur. 
Ces comparaisons étant faites, 
voyons le boîtier d'interface. Il se 
branche directement sur la prise 
joystick de l'AMSTRAD et pré- 
lève son alimentation par un cor- 
don muni de prises qui s'interca- 
lent en série dans l'alimentation 
de l'ordinateur. Nous avons 
démonté les boîtiers et découvert 
une mécanique et une électroni- 
que de fort belle facture. Les 
composants sont installés sur des 



circuits imprimés en époxy. 

LES LOGICIELS 

La souris AMX est livrée avec une 
cassette ou une disquette conte- 
nant quatre logiciels dont le plus 
accessible est ART. Il s'agit d'un 
logiciel de dessin utilisant les icô- 
nes et les menus déroulants. Rap- 
pelons que les icônes sont des 
symboles graphiques représen- 
tant une fonction du logiciel, que 
l'on choisit en y superposant le 
curseur de la souris et en pres- 
sant le bouton. On y trouve tou- 
tes les fonctions usuelles de ce 



type de programmes de dessin, à 
savoir : crayon, gomme, aérogra- 
phe, différentes tailles de pin- 
ceaux, trames, polices de carac- 
tères; comme notre programme 
Cherry-Paint, ART est mono- 
chrome. La souris apporte un 
confort d'utilisation supérieur au 
joystick ou au clavier, et la beauté 
de votre œuvre sera fonction de 
vos talents de dessinateur et de 
votre imagination. Notons que les 
images peuvent être sauvées sur 
cassette ou sur disque et impri- 
mées sur papier, pourvu que vous 
disposiez d'une imprimante 
AMSTRAD ou compatible 
EPSON. 

L'excellent manuel d'utilisation 
vous explique comment utiliser la 
souris dans vos programmes et 
créer vos propres trames à l'aide 
du programme Pattern Designer, 
ou vos icônes avec le pro- 
gramme... Icon Designer. 
Le dernier programme du lot : 
AMX Control apporte un jeu de 
14 instructions supplémentaires 
spécifiques à la souris au Basic de 
l'AMSTRAD. On pourrait qualifier 
ce programme de MOS (Mouse 
Operating System). Par exemple, 
l'instruction IMovepointer efface 
le curseur, raffiche l'écran d'ori- 
gine et replace le curseur à la 
nouvelle position définie par la 
souris. De belles heures de pro- 
grammation en perspective. 
H ne nous reste qu'à attendre 
qu'elle soit importée en France et 
à espérer qu'elle sera vendue à un 
prix voisin de son prix en Angle- 
terre, qui est de 69,95 livres. 




COMMENT ÇA MARCHE ? 

La souris contient une boule métallique qui roule sur la table quand 
on la déplace. Cette boule entraîne deux rouleaux diposés à 90° 
l'un par rapport à l'autre et chacun de ces rouleaux entraine un 
disque métallique muni de fentes qui tourne en passant dans une 
boîte à lumière. Dans la boîte à lumière, appelée optocoupleur, on 
trouve, d'un côté une diode LED qui émet de la lumière, et de l'au- 
tre, un phototransistor qui capte la lumière passant par les fentes 
du disque. Ce phototransistor génère des impulsions électriques 
dont la cadence est proportionnelle à la vitesse de rotation du dis- 
que et, par conséquent, aussi à la vitesse de déplacement de la 
souris. Les circuits électroniques de l'interface traitent ces impul- 
sions, détectent le sens et la vitesse de rotation des disques et 
génèrent de signaux qui sont appliqués aux quatre commandes 
de la prise joystick de l'AMSTRAD. On notera que la souris ne fonc- 
tionne correctement que si on la déplace sur une surface plane 
démunie d'aspérités. 




■ 






Il ■ I 


| l MESSAGES' 




II 














Fi 






r ■s.; 


1 pin 

■ 01 


— »*"*' — 


'■■ Ç% ■ ■ i 


L-iimc 


Kicon" 






ICON -PAGE #0 







imaginez que votre AMSTRAD vit 


n t de tomber 


en panne ; i! ne tu 


*6M 


plus qu'un petit 


kilo-octet de mémoire. Saurez,- vo 




programmes qui n 




snt que dans ce 


Mto-Oetet ? Attention t vosproors 


Times devon 


être écrits en Bas 




1 les routines en 


coda machine présentées sous forme de data 


ont acceptées- F> 


tes-rt 


ïus parvenir vos 


programmes suf cassette, eccompàgnéBd unefc 


ève explication. i.t 


i cassettes vous seront 


retournées si vous le démandez. 










Alors, s vas claviers. !l feiir réuss 


r à loger le m 


ijtfirtum d'intettige 


>ce 3<i 


ns un kloocie! 


Las meiilEurs:programme= seront r 


lisâi'honneu 


rdansCPCetieur 


aue 


ts lécompensés 



cataloguer une cassette de manière plus 
détaillée que la commande CAT tradition- 
nelle. La présentation fournit, sous forme de 
tableau, les renseignements suivants : Nom 



'!»12)=*M*1MI6 



fichie 



bloc 



bloc 



(Oui = &FF, Non = 0], type du fichier 
(Bp = Basic protégé. As = Ascii, Bi = Binaire, 
Ba = Basic), longueur du bloc, adresse de 
début, premier bloc ? IOui = &FF, Non = 0), 
longueur totale du fichier, adresse d'exécu- 
tion d'un programme en langage machine, et 
enfin des datas qui ne sont pas utilisés par 
le système d'exploitation, mais servent par- 
fois È cacher un programme ou des informa- 
tions secrètes. Tous les chiffres sont en hexa, 
sauf les numéros de blocs. Christian recevra 
en récompense un superbe livre d'aventure. 

10 MODE 2:MEM0RY 38899:F0R 1=38500 10 38 
911:RcAD A:PCKE I,A:NEXT;DEF Frift(A)=HE)! 
ï((PEEK(AH25è*PEEK(fl+l)),4):DEF FNcKaJ 



1.183.201 

20 AÏ!Û)='SA';. 
)="AS" 

24 PLÛT 0.375:DRAUR 640.0 

25 F0H i=l Tu 9:RE£D «PLOT w,399:!)RAWF 
0,-40D:NE«î 

28 DATA 130.156.160,205.^3,^0,322.368, 

412 

50 L0CATE 2,l:PRÏNT , nom '\l0CATE 18.1:PR 

INT'E*:L0CATE 21 . 1 : PRÎNT'DE" :L0CATE 1,3: 

LMATE 2*.l:PfiINT É TF':L0CATE 27,1:PRINT 

im E':L0CATE 33,1:PRINT'DEE":L0CATE 38, 

1:PRÏNT , PS?':LÛCATE 42,1:PR1M"L0N F':L0 

CATE 4fl,l:PRIMT , EÏEC':L0CATE 55.1 sPRINT" 

DATAS ?" 

55 CALL 3B900 

6D L0CATE l.a:F0R 1=39000 T0 39015:PRÏNT 



CHRS(PEEK(I)) 


:MEXT 


61 LOCATE ie,a;PRINT USINS , S#';PEEK[390 
16) 

62 L0CATE 21.a:PRINT FrJgï(39017) 


63 LOCATE 24.a:PRINT A*KPEEK(3901B) AND 


!5)t 


t.4 LOCATE 27.a 


PRINT FNfïl 39019) 


65 LOCATE 33, a 


PRINT FNft(3902i) 


66 L0CA1 38, a 


PRINT FNg$(39023) 


67 LOCA'E 42, a 


PRINT FNftl 39024) 


oB LCCATE 48. a 


PRINT FNf*(39026)i 


70 FOR ;=3902B T0 39063:1F PEEKIDO0 TH 


EN GCTO 75 aSE rOT:S0T0 BO 


75 FRINT TAB(53)::FOR 1=39027 T0 39063:P 


=>W F^jgïd ) ; *, *; :NEXT:a=a+3:S0T0 55 


80 a=a+l:G0TC 55 



FAUDRAIT PAS PLAISANTER ! 

Un lecteur candide ? naïf ? mal 
informé ? nous adresse, pour 
publication dans CPC, un article 
sur un synthétiseur vocal paru 
chez notre confrère ELEKTOR ! 
Il ne faut pas pousser ! Les arti- 
cles et programmes publiés dans 
CPC doivent être inédits. Il ne 
saurait être question de publier 
dans nos colonnes des sujets 
déjà traités ailleurs, surtout si 
vous n'en êtes pas l'auteur... 



ENFIN, UN SYNTHETISEUR VOCAL FRANÇAIS, 
parlant français, comme les français. 




de vente 480 F TTC 



L'MTERFFlŒS'JlïniDI 



1490 F 



Z SYNMIDÏ ~ 



Les possibilités de ce svnttiétiseur vocal TECHNIMUSIQUE 
sont multiples. A base de formants, celui-ci est programmable 
par phonèmes ( logiciel de phonèmes français livré d'origine ), 
diphonèmes, mots, phrases ; utilise l'amplificateur audio interne 
du micro ordinateur, possède une sortie ampli hifi. < résultats 
surprenants ), sortie déport bus. 

Tous ces matériels et logiciels sont compatibles avec Amstrad 
CPC 464, 664,6128, en vente chez votre revendeur ou TECHNI- 
MUSIQUE. 



Démonstration, vente permanente à Ams - Expo Holiday INN, PARIS Porte de Versailles, le 7, 8, décembre. I 




Vente Informations Services Micro Ordinateurs 

7fiit%a-a%dincitecix6 familiaux 

84, bd Beaumarchais - 75011 Paris 82, M de Reuilly - 78018 Paris 

Métro Bastille ou Chemin Vert Métro DaumeBnil ou Dugoiûmier 

De 10 h à 20 h sauf dimanche De 14 h à 20 h sauf dimanche et lundi 






sp^^o*^ 



ZZJk& 



CONDITIONNE SUR UN SUPPORT EN 
POLYSTYRENE AVEC Kj PROGRAMMES 



TABLE DES MATIERES 

PREFACE I 
CHAPITRE 



angage Basic 



. L'ordinateur. . ........... 

. Le language Basic. 

. La notion de programme 

, Quelques Instructions Basic, 

, Test des connaissances 



CHAPITRE 2 



Les jei 



, Deviner des chiffres.. 



Manipuler des degrés 

Résoudre des équations. 
Statistiques 



CHAFITKE 4 : Graphismes 



. Une table a dessin 

CHAPITRE S : la gestion de fichiers 



, Leb notions de donné) 

, La gestion des fichiers 

. One application des fichiers 

, Programme AGENDA 

. Budget familial 



de fichiers. , 



: Comptabilité 



, Facturation 

. Comptabilité génér; 
, buletin de paye..., 



PRIX PUBLIC 138,00 FRS TTC 




mi 



GENERRLPE 



EtUTTI 



R H 8 ,T,R R D 



CE LOGICIEL VOUS PERMET 



200 COMPTES 

750 ECRITURES 

PLAN COMPTABLE AVEC COLLECTIFS GESTIOI 

OUVERTURE DES COMPTES 

SAISIE DES ECRITURES 

TENUE DES COMPTES en permanence 

CONSULTATION DU JOURNAL DES COMPTES 

CONSULTATION de In BALANCE 

EDITION DES LISTINGS SUR IMPRIMANTE 

LISTING DES COMPTES 

JOURNAL GENERAL 

GRAND-LIVRE 

BALANCE 

TEST DE CONFORMITE DU PLAN COMPTA BLE 

CONSERVATION DES DONNEES SUR CASSETTE 

LOGICIEL ACCESSIBLE IMMEDIATEMENT 



PROTECTION DES DONNEES PAR UNE CLSF 
EMPECHANT TOUTES INDISCRETIONS 

POURQUOI ATTENDRE 

PROGRAMME COMPTAMSTRAD SUR 
DISQUETTE 750 FRS 

PRIX PUBLIC 450.00 FRS TTC 



UN MAGNE 

PHDN 



AU BANC 
D'ESSAI 



Un magnétophone, diable, 
mais pour quoi faire ? Pour 
les CPC 664, pardi ! Le lecteur de 
disquettes intégré a supprimé le 
magnétophone, mais bon nombre 
d'utilisateurs passant du 464 au 
664 se retrouvent avec des logi- 
ciels sur cassettes inutilisables... 
Faut-il acheter un magnétophone 
spécial informatique ? Peut-être... 
En tout cas, celui que nous avons 
testé en premier, "LASERDA- 



TA", ne nous a pas convaincus. 
Elégamment habillé de gris 
anthracite, il s'intègre à l'environ- 
nement CPC par sa couleur. L'ap- 
pareil est alimenté directement à 
partir du secteur 220 V, ce qui 
est un bon point. Il possède, 
comme il se doit, un compteur 
indispensable au repérage des 
enregistrements. Il ne possède 
pas de haut-parleur incorporé, et 
le petit frère (ou la petite sœur) 





ne pourra pas s'en servir pour 
écouter Chantai Goya. Un 
contrôle auditif type "buzzer" est 
commandé par un circuit de 
"monitoring" que l'on peut met- 
tre "EN" et "HORS" service. Le 
réglage du niveau de sortie est 
commandé par un potentiomètre 
portant des graduations de zéro 
à 10. Côté enregistrement, c'est 
automatique : il n'y a aucun 
réglage et une diode électrolumi- 
nescente s'allume lors du 
"SAVE". 

Le clavier de commande est 
composé de cinq touches gris 
clair et d'une sixième (verte) pour 
l'enregistrement. Ce clavier, tout 
en plastique, ne donne pas une 
impression de fiabilité exem- 
plaire ! Nous avons glissé trois 
logiciels pour essayer de les char- 
ger : aucun problème avec deux 
d'entre eux, par contre beaucoup 
de difficultés avec l'autre. Pour- 
tant, sur le 464, nous n'avions 
aucun problème avec cette cas- 
sette. Ah ! les problèmes d'azi- 
mutage... 

Autre défaut constaté sur l'exem- 
plaire dont nous disposions : une 
fâcheuse tendance au blocage 
lors du défilement de la cassette. 
Les entrées/sorties vers l'ordina- 
teur se font sur prise DIN ou sur 
jack. Lors de l'achat, n'oubliez 
pas de demander le câble spécial 
pour la liaison avec l'AMSTRAD. 
Notre conclusion : pour 390 F 
l'appareil testé nous paraît assez 
peu fiable mécaniquement... En 
cherchant bien, vous le trouverez 
à moins cher mais, surtout, ne le 
payez pas plus de 400 F. 



ESSAI IMPRIMANTE 



MT SOS 



Choisir une imprimante, périphérique important du micro- 
ordinateur, n 'est pas chose facile. S 'il est vrai que la ponction 
effectuée sur le porte-monnaie est déterminante, il y a d'autres 
facteurs à prendre en considération. 



Parmi les nombreuses impriman- 
tes qui existent sur le marché de 
l'ordinateur familial, il en est qui 
émergent, soit par le prix, soit par 
les possibilités, soit par leur 
renommée. Certaines allient tous 
ces avantages et sont présentes 
sur bien des catalogues de 
revendeurs. 

La MT80S de MANNESMAN- 
TALLY est de celles-là. 
Pour moins de 4000 F, la MT80S 
met à votre portée d'excellentes 
caractéristiques : une mécanique 
robuste (il n'y a qu'à ouvrir le 
capot et regarder les pignons 
d'entraînement), un encombre- 
ment qui reste acceptable (385 x 
320 x 1 30 pour un poids de 5 kg) 
et un jeu complet de modes 
d'écriture que nous allons exami- 
ner. La vitesse de travail (100 
cps) est également un atout. 
Il est irritant, sur certains maté- 
riels, de devoir se livrer à une 
gymnastique fastidieuse pour 
introduire le papier dans la 



machine. Ici, ce ne sera pas le 
cas : le circuit papier est très bien 
étudié, et les risques de "bour- 
rage" sont réduits. Le ruban 
encreur est livré sous cartouche, 
ce qui évitera de laisser des dis- 
gracieuses (ou traitres) emprein- 
tes digitales après sa manipula- 
tion. 

Bien sûr, la MT80S n'admet pas 
seulement du listing "accor- 
déon", mais aussi du papier nor- 
mal, pour faire vos rapports ou 
votre courrier. L'entraînement du 
papier se fait par traction (listing) 
ou friction (normal). 
La mise sous tension s'effectue 
par un interrupteur disposé sur le 
flanc droit de l'imprimante. Dès 
qu'il est actionné, les voyants 
POWER, READY, ON LINE, situés 
sur la face avant, s'allument. Un 
indicateur "PAPER OUT" vous 
informera de l'absence du papier. 
Deux commandes, FF (Form 
Feed) et LF (Line Feed) permet- 
tent, à condition que l'imprimante 



soit "off line", de faire avancer 
le papier par page ou ligne. 
Un auto-test peut être déclenché 
à la mise sous tension, si on 
active l'interrupteur en même 
temps que l'on appuie sur LF : le 
jeu de caractères est alors 
imprimé en continu. 
La longueur d'une page peut être 
réglée à 66 ou 72 lignes (papier 
11 pouces ou 12 pouces). 
L'initialisation de l'imprimante 
peut se faire par logiciel, 
commandée directement à partir 
du micro par l'envoi de la 
séquence ESC 

Le jeu de caractères comporte 96 
caractères normaux, 96 italiques, 
87 caractères spéciaux et codes 
de commande, 103 caractères 
semi-graphiques. 
Sur AMSTRAD, une partie de ces 
possibilités ne pourra être exploi- 
tée à cause de la liaison non stan- 
dard (absence du 8 8 bit). Si on 
tenait le "cerveau musclé" qui a 
affublé notre chère machine de 
cette tare... 

Il est à noter que l'accès aux dif- 
férents jeux de caractères s'ef- 
fectue par soft intégralement ou 
par hard (dip-switches), ce qui est 
très intéressant. 



Je su i s 1 ' ire 


primante MAHNESMANN TALLY MT 


SOS. 




et je vous f 


repose plu.sieu.i- 


s modes d'écriture... 














!"«*%&' <)*+., 


-. /01234567B9: 


<=>?àABCDEFGHIJKLHNOPSRSTUVWXYZ ■£§■"_■ 


abcde-fghi j klmnopqrstuvwxyzéùè 








\Jd iri 1 


e- m CD d & 


e- 1 &r- 


■3*7 




pou t~ 


1 <=■!= t i 


tras 




on le iode condense, 


pour gagner le la place... 








lien entendu, en m 


peut nn e- 1 va ei -3 & r- 


- - " 




Ecrivons en 


plus gras 








Et «s-n 


GROS e-t 


GRAS 






Normal e*,=o«r.* 








Normal x •*«««,» 










Les caractères sont définis sur 
une matrice 7x8 ou 8x8 en 
semi-graphique. Le mode graphi- 
que autorise 640 points par ligne. 
Le mode "normal" est complété 
d'un mode "condensé" et d'un 
mode "élargi". 

De 80 caractères par ligne, on 
passe à 1 42 caractères en mode 
"condensé". En mode élargi, on 
peut écrire sur 40 colonnes. Les 
modes "Elite" et "Exposant" 
sont aussi disponibles. 
Un petit exemple étant préférable 
à tous les longs discours, vous 
trouverez, dans cet article, une 
présentation des différents 
modes d'écriture. 
La séquence code ESC suivie de 

I ou 2 caractères sera fréquem- 
ment utilisée ; il est ainsi possi- 
ble d'accéder à toutes les res- 
sources de l'imprimante : mar- 
ges, soulignement, modification 
d'interligne, écriture proportion- 
nelle, tabulation et même les 
mises en et hors "line" de l'im- 
primante. 

II est intéressant de noter qu'un 
"DUMP" hexadécimal des carac- 
tères envoyés è i'imprimante 
peut être reproduit sur papier ; 
cela est très utile lors de la mise 
au point de certains logiciels. 
Le mode graphique "bit-image" 
ne sera pas utilisable directe- 
ment, et il faudra écrire un logi- 
ciel, mais cela vaut pour toutes 



les imprimantes, le HARD COPY 
graphique (ou texte) n'étant pas 
prévu dans le Basic de l'AMS 1 
TRAD. 

Evidemment, l'absence du 8 B bit 
obligera l'auteur du logiciel de 
recopie à jongler un peu avec les 
possibilités du mode BIT IMAGE 
de l'imprimante. 
Dans ce mode, les profils binai- 
res à reproduire sont définis sur 
deux octets, représentant le nom- 
bre de bits qui suivent, chaque bit 
représentant lui-même un point 
image. La copie graphique pourra 
se faire en simple ou double den- 
sité. 
La notice, bien qu'écrite en 



anglais, est suffisamment 
complète pour aider le program- 
meur, efficacement, lors du déve- 
loppement de logiciels utilisant 
l'imprimante. 

Les essais auxquels nous avons 
procédé pendant la période du 
test montrent que le matériel est 
très sérieux, robuste et facile à 
utiliser. Servie par un bon logiciel, 
la MT80S possède bien des 
atouts : fiabilité, vitesse de tra- 
vail ( 1 00 cps en mode normal) et 
simplicité d'emploi, complétés 
par le caractère multi-usages du 
matériel. 

Lorsque nous vous aurons dit que 
cette imprimante est disponible 
chez ORDIVIDUEL, annonceur 
dans CPC, et que le Père-Noël a 



Connaissez -vous 




convaincu le gérant du magasin 
de faire une promotion à l'occa- 
sion des fêtes (3350 F au lieu de 
3950 F), vous conviendrez qu'il 
est peut-être temps de vous équi- 
per de ce périphérique capable 
d'imprimer votre courrier et vos 
listings. 






CPC A 'AMSTRAD EXPO" 

A ne pas manquer si vous dési- 
rez rencontrer toute l'équipe de 
CPC. Nous serons présents sur 
un stand et espérons vous y 
accueillir. 

Ce sera l'occasion pour vous de 
découvrir les programmes publiés 
dans CPC, d'acheter disquettes 
et cassettes, de vous abonner et 
de venir nous montrer vos derniè- 
res réalisations. 

AMSTRAD EXPO 

HOTEL HOLIDAY INN 

Porte de Versailles 

du 24 au 27 janvier 1 986 




U-DOS a été créé par LOGICYS dont nous avions de/à 
testé le logiciel de facturation. Comme celui-ci, U- 
DOS ne nous a pas déçus. La disquette intègre une 
routine d'accès direct (fichiers accès direct absents du DOS 
AMSTRAD) et des utilitaires qui devraient faciliter la vie 
du programmeur. 



Bien que livrée avec une notice 
"papier", la disquette U-DOS 
contient un fichier décrivant ses 
diverses possibilités. 
U-DOS est livré sur une disquette 
protégée qu'il vous sera impos- 
sible de dupliquer. 
Il est à noter que U-DOS et ses 
utilitaires ne peuvent être utilisés 
que sur des disquettes initialisées 
DATA. 

Nous aurons certainement l'occa- 
sion de revenir sur la théorie des 
fichiers dans CPC, notamment 
pour parler de l'accès direct, 
aussi notre essai se bornera à 
vous parler essentiellement des 
utilitaires disque fournis avec U- 
DOS. 

ACCES DIRECT 

Grâce à cette routine, il est pos- 
sible d'ouvrir 7 fichiers simulta- 
nément. 

Quatorze commandes ou instruc- 
tions sont ajoutées, dont deux 
commandes qui n'ont rien à voir 
avec les fichiers : PAUSE pour 
programmer des délais et deux 
ordres d'écriture/lecture permet- 
tant, à partir de chaînes de carac- 
tères, de lire et d'écrire des zones 
mémoire. 

Un descripteur d'erreurs com- 
plète le U-DOS. 



LES UTILITAIRES 

Les utilitaires disque sont acces- 
sibles à partir d'un menu général 
et permettent de travailler sur une 
ou deux unités de disquettes. 



Directory amélioré 

Donne davantage de renseigne- 
ments sur le catalogue de la dis- 
quette : le numéro logique des 
fichiers, son type, implantation 
physique pistes et secteurs, tail- 
les disque et réelle des différents 
fichiers. 

Un résumé indique le nombre de 
fichiers de chaque sorte (BAS, 
BIN, etc.) et d'entrées encore dis- 
ponibles sur le DIRECTORY. 
Le tableau, présenté à l'écran, 
peut être édité sur imprimante. 

Description de fichiers 

Donne l'occupation en pistes/ 

secteurs sur le disque, ainsi que 

la piste et le secteur de début de 

fichier. 

Permet également de renommer, 

supprimer, initialiser... 

Dump secteur 

Sortie sur l'écran, ou sur l'impri- 
mante, du contenu listé en hexa- 
décimal et en ASCII, de tout un 



lÉfelMtfÉBHr 



secteur. 

Un mini-éditeur permet de modi- 
fier un ou plusieurs octets du sec- 
teur, en hexa ou en ASCII, et de 
sauvegarder le secteur modifié. 

Représentation graphique 
de l'occupation disque 

L'occupation du disque par les 
différents fichiers est représentée 
sous forme graphique. On peut 
donc voir les secteurs libres ou 
occupés. 

Le total des secteurs libres est 
affiché ainsi que le nombre de 
kilo-octets qu'ils représentent. 

Copie de fichiers 

Pour éviter de passer par CPM, U- 
DOS contient une routine de 
copie de fichiers. Hélas, elle n'est 
utilisable qu'avec deux drives, et 
uniquement sur des disquettes 
formatées en DATA. 
Signalons enfin la présence d'un 
utilitaire de définition de fichiers 
indexés et d'un autre, évitant 
l'utilisation du ERA, fonctionnant 
comme un éditeur de Directory, 
où la suppression est plus aisée. 
En conclusion, nous dirons que 
U-DOS, outre le fait qu'il permet 
enfin de disposer de l'accès 
direct, est très intéressant de par 
les utilitaires qu'il intègre. 






Transformez votre 464 en 664+ ! 

CARTE MÈRE - EXTENSION EPROM de Super Power 

La carte mère s'installe entre l'ordinateur et l'interface disquette (si celle-ci 
est utilisée). Elle peut accueillir jusqu'à 7 EPROMs (mémoire morte pro- 
grammable) de 8 ou 16K chacune. 

Les programmes en EPROM sont instantanément disponibles sur simple 
commande au clavier. La carte mère de construction robuste est d'utili- 
sation simple. Elle est accompagnée d'une notice en français. 

Programmes déjà disponibles en EPROM 

^^^m UTILITAIRE GESTION DE DISQUETTE SUPER POWER ^^m 

Ce programme permet l'inspection et la modification des informations 
contenues sur 1 disquette. Un utilitaire essentiel pour récupérer les don- 
nées contenues dans une disquette défaillante. Chaque secteur peut 
être lu et réécrit, toutes les données peuvent être affichées ou impri- 

Le programme contient au si un certain nombre de fonction utiles aux 
programmeurs en langage machine. 
Description ; 

- Affichage du contenu du «directory» - édition possible 

- Lecture et écriture d'un secteur de disque - édition possible 

- Lecture des mémoires, possibilité d'édition, de copie et d'impression. 

- Désassemblage code entre adresse donnée, donnant adresse, code 
objet, mnémoniques, ASC II. 

- Recherche dans les secteurs fichiers, une chaîne (stringj ou une série de 
codes HEX. 

- Formatage, duplication de disque sans CP/M. 

- Conversion HEX-BIN-DECIMAL. 

- Choix de mode d'affichage. 

- Etc.. 



(affiche la ligne DATA; 



Commandes directes 
Character : création de caractère utili 
Compact : comprime un programme Basic 

Editor : Editeur à trois fenêtres 

Find/replace : cherche et remplace un caractère ou une chaîne 
Médit: HEX éditeur et ASC II 

Picture : aide à la création des UDG 

Soundlab : éditeur d'enveloppe 

Xref : donne toutes les références d'une ligne (GOTO, 

GOSUB-) 

Commandes imprimante 

Cdump : copie haute- résolution 

Echo on : sortie directe sur imprimante 

Echo off ; LTRON - sortie TRACE sur imprimante 

Commandes graphiques 
! Circle, Fill, Frame, Gcol, Graphie paper. Graphie pen, Mask, 
Turtle... 

Commandes d'écran 

Copychr : caractère double hauteur ou souligné 

Page-on : défilement vertical 

Page-off : passage d'un écran à l'autre 

Commandes fichiers 

Baud : choix de vitesse jusqu'à 4000 Baud 

Info: donne adresse, longueur, adresse d'exécution 

Unprotect : charge un fichier «P» 



SEMAPHORE LOGICIELS 

c.p. 32 CH-1 283 La Plaine (Suisset Tél. 022/54 1 1 95 

Distribution & Services 

Avenue du Québec B.P. 209 91944 Les Ulis cedex 

Tél. 6/446 27 80 



lAfttORD 

M Al L - M E R 



»n» 



adressage incorpore. 

Fichier de travail porté à 22K sur 
464/664 et 64K sur le 61 28. 
Echange de données avec MASTERFILE 
(fichier) et MASTERCALC (tableur). 
Conversion de vos programmes TAS- 
WORD/AMSWORD 464 possible. (Ecri- 
vez-nous). 

TASWORD, TASPRINT, TASCOPY, SEMEXT 
MF, SEMEXT MC, Les outils sérieux de 
gestion de texte et données de chei 
SEMAPHORE ! 
Demandez notre documentation. 



Prix de lancement : 

Carte mère 

EPROM utilitaire disquette 
EPROM boîte à outils 
Carte mère + 2 EPROM 



Licence SUPER POWER de MICROPOWER 
Distribué en exclusivité par SÉMAPHORE 



ECHECS 
VOCAL 







UN TRAITEMENT DE TEXTE A LA LOUPE : 




SEMWORD 



SEMWORD tit un produit dérivé de /'excellent TAS- 
WORD de TASMAN Soft, complété par SEMAPHORE 
Logiciel* (Suiêêm). Lm$ compliments apportés en font 
un outil à la fols puissant et performant, adapté au mar- 
ché "francophone". Nous allons examiner l»s qualités (et 
Ims défauts) de ce logiciel. 



Au premier abord, SEMWORD 
paraîtra complexe à utiliser : en 
fait, après quelques dizaines de 
minutes, vous serez capable de 
saisir votre premier document et 
de l'imprimer. Après un couple 
d'heures passées en compagnie 



£ot*ir 

INFORMATIQUE 

Micro-ordinitiuri 



Nombreux logicitli 

4 MAGASINS EN NORMANDIE 

22, Place du Général de Gaulle 

76600 LE HAVRE 

Tél.: 35.43.51.54 

39/41 Rue de l'Oratoire 

14000 CAEN 

Tél.: 31.85.18.77 

31, Boulevard de la Marne 

76000 ROUEN 

Tél.: 35.07. 60.60 

1 1 . rus du Perré 

61220 VIMOUTI ERS 

Tél.: 33.39.16.65 



de votre clavier et de la notice, 
vous découvrirez toutes les sub- 
tilités, et la puissance de ce logi- 
ciel. 

SEMWORD fonctionne en 80 
colonnes mais l'écran est en fait 
une fenêtre de 80 colonnes sur 
une largeur possible de 128... A 
l'initialisation, vous disposerez, 
grâce à la redéfinition des tou- 
ches, d'un clavier AZERTY. Le 
pavé numérique permettra l'ac- 
cès aux "accentuées" par l'ac- 
tion conjuguée sur la touche 
SHIFT. Tout ceci est modifiable 
selon les habitudes de l'utilisa- 
teur, en particulier le retour au 
QWERTY si vous le souhaitez. 
Bien que le manuel accompa- 
gnant la disquette soit très 
complet, un aide-mémoire est 
intégré au logiciel. Une partie de 
celui-ci est présente à l'écran en 
permanence, mais peut être 
escamotée. A tout instant, il est 
possible de faire apparaître la 
totalité de l'aide-mémoire. Vous 
serez surpris par toutes les fonc- 
tions disponibles... 
Au bas de l'écran, une ligne 



d'état indique les différents para- 
mètres de fonctionnement : posi- 
tion en ligne, colonne, justifica- 
tion, wrapping... 
Comme tout bon traitement de 
texte, SEMWORD ne coupera 
pas vos mots n'importe où... Le 
"Word Wrapping" effectuera la 
césure entre deux mots. Vous 
pouvez donc saisir vos textes 
sans vous soucier de cette 
contrainte. Cette fonction peut 
être inhibée. 

La "justification" à droite est 
automatique, mais peut être sup- 
primée. Il est possible d'obtenir 
des textes "en drapeau". On 
peut "déjustifier" une ligne, 
"rejustifier" un paragraphe... ou 
tout un texte. 

On peut également centrer auto- 
matiquement une ligne, en fonc- 
tion de sa longueur. 
Les déplacements au sein du 
texte sont rapides et aisés, à 
l'aide des touches de curseur. En 
règle générale, les différentes 
fonctions sont obtenues par 
action conjuguée sur les touches 
CTRL ou SHIFT plus une touche 
alphanumérique. 
Effacer un mot, une ligne... ou 
tout le document sont des jeux 
d'enfant. A l'inverse, les inser- 
tions sont tout aussi aisées. Pour 
modifier des parties du texte, il 
est possible de poser des "mar- 
ques" délimitant un groupe de 



mots pour les déplacer ou les 
supprimer, voire les dupliquer. 
La tabulation et la pose de mar- 
ges sont réglables. Un paragra- 
phe pourra être marge sur 60 
colonnes, alors que les autres le 
sont sur 80 ou 40... 
Les commandes d'impression 
sont multiples et permettent un 
paramétrage complet de la sortie 
du document sur papier. Il est 
possible de faire du feuille à 
feuille ou de l'impression en 
continu, d'imprimer des numéros 
de page, des titres, des bas de 
page. Des séquences de plusieurs 
codes de commandes peuvent 
être programmées pour être 
envoyées à l'imprimante autori- 
sant le soulignage, le change- 
ment de police de caractères et 
toutes les fantaisies acceptées 
par votre machine. 
Le logiciel SEMWORD peut être 
personnalisé : redéfinition de tou- 
ches, intégration de chaînes de 
caractères (par exemple pour 
obtenir les mots souvent utilisés 



dans un rapport ou les formules 
de politesse), séquences de 
caractères de commande impri- 
mante, couleurs sur l'écran pour 
encre et papier. 

Mais la grande originalité de 
SEMWORD réside dans la possi- 
bilité (que n'offrait pas TAS- 
WORD) de fusionner des don- 
nées. Ainsi, vous pouvez placer 
à un endroit de votre texte, des 
codes de commandes qui vont 
faire appel à un fichier externe 
capable d'ajouter des morceaux 
de texte à votre document. C'est 
la porte ouverte vers le MAILING, 
par exemple, qui séduira bien des 
utilisateurs. On peut également 
récupérer des données de 
MASTER-FILE ou MASTER- 
CALC. 

Comme les fichiers lus {ou pro- 
duits) par SEMWORD sont de 
type ASCII, il est possible de 
reprendre un listing source, 
généré par un assembleur (ZEN, 
par exemple) et de les commen- 
ter avec le traitement de texte. 



Il est difficile de dire, en si peu de 
place, quels sont les atouts de ce 
logiciel et s'il souffre de quelques 
menus défauts (par exemple, la 
lenteur de rejustification d'un 
long document en cas de modi- 
fication des marges, ou le fait 
qu'il faille changer de disquette 
au moment des sauvegardes ou 
lectures de texte), il présente, à 
notre avis, l'avantage d'être un 
outil de travail extrêmement 
complet, capable de séduire l'étu- 
diant rédigeant sa thèse ou le 
technicien établissant s son rap- 
port. ^^»w 1 
SEMWORD est Vendu, sur dis- 
quette, 345 F. Il n'est pas pro- 
tégé contre la copie et bénéficie 
d'une garantie. SEMAPHORE 
annoncé même qu'il est en 
mesure de "légaliser" les posses- 
seurs de copies pirates de TAS- 
WORD en leur fournissant, pour 
80 francs, le manuel et une carte 
de garantie. Cette réaction 
devant le fléau du marché qu'est 
le piratage laisse rêveur... 



MMMM »** " * " * MM . ^tj i M *i " ii*i ^M ** M ii ^ i 




10/aA 



de 1 ' 

PRIX SPÉCIAUX POUR COLLECTIVITÉS 



ET ASSOCIATIONS 




**-' jpr~ î s- 



Pour tout achat d'un ordinateur, un abonnement de 6 mois à CPC vous sera offert. 



PROGRAMME 



AMSTUS 



Marie-Pierre BILLIOUD 



le rem 



mstus est un tableur pour AMSTRAD inspiré de son grand 
cousin américain LOTUS 1.2.3. 1/ a cependant /'avantage 
Mur ce dernier d'êtro écrit en français et en Basic, ce qui 
le r»nd accessibles à tous. 



La vitesse d'exécution n'est pas 

trop lente en elle-même du fait de 
la rapidité du Basic Amstrad, mais 
vue l'importance de l'occupation 
mémoire, elle est souvent ralen- 
tie par les pauses que fait l'ordi- 
nateur pour réaménager son 
espace mémoire, ce qui réduit la 
taille du tableau à des limites infé- 
rieures à ce qui serait théorique- 
ment possible. Un compromis a 
été choisi en prenant 1 5 lignes et 
38 colonnes, ce qui permet, par 
exemple, de loger facilement un 
budget familial ou tout tableau 
devant comporter les douze mois 
de l'année. Pour modifier la capa- 
cité du tableau, il suffit de chan- 
ger la variable FIN pour les colon- 
nes et FINI pour les lignes. 

En ce qui concerne le fonctionne- 
ment, les habitués de Lotus ne 
seront pas dépaysés, car la pré- 
sentation de l'écran est sensible- 
ment la même : 

— affichage des lignes sous 



forme numérique (1 ... 38) ; 

— affichage des colonnes sous 
forme alphabétique (A ... Z, AA... 
AZ ...) ; 

— curseur déplacé d'une case 
avec les flèches ou d'une page 
avec les flèches shiftées ; 

— indication en haut à gauche de 
la ligne et de la colonne sur 
laquelle se trouve le curseur ; 

— indication du contenu (for- 
mule) de la case sous le curseur 
avec indication entre parenthèses 
du format en cours pour l'impres- 
sion des nombres. 

Les saisies de données se font en 
tapant les caractères au clavier. 
Elles commencent par s'inscrire 
en ligne 2, au-dessus du tableau 
et ne sont prises en compte 
qu'après validation par appui sur 
la touche "ENTER" ou sur une 
flèche, ce qui provoquera alors un 
déplacement du curseur consé- 
cutivement à la validation. Avant 
validation, la touche "DEL" peut 
être utilisée pour les corrections 



à l'exception du premier carac- 
tère qui est susceptible d'être un 
caractère de formatage. 
Le nombre des fonctions a été 
volontairement réduit car, 
compte tenu du peu de place 
mémoire, il est préférable de lais- 
ser à chacun la possibilité d'im- 
planter les fonctions dont il peut 
avoir besoin, ainsi qu'il est expli- 
qué plus loin. C'est ainsi que, 
dans la version proposée, on ne 
trouve que les quatre opérations 
de base et une fonction de tota- 
lisation. 

Dans le cas d'opérations isolées, 
il est nécessaire de faire précéder 
la première donnée d'un opéra- 
teur (généralement le signe + ), 
sinon le programme considérera 
qu'il s'agit d'un caractère. 
Les fonctions sont de la forme 
SUM {AI .XI), où est le signe 
indispensable pour indiquer qu'il 
s'agit d'une fonction. SUM est le 
nom de la fonction (ici, somme 
des colonnes). A1 et X1 sont la 
première et la dernière cellule sur 



lesquelles doit être appliquée la 
fonction (obligatoirement sépa- 
rées par un point). Attention de 
ne pas inclure la cellule compre- 
nant la fonction dans son champ 
d'application car le programme 
risquerait de ne pas s'en remet- 
tre. 

En ce qui concerne les chaînes de 
caractères, il est possible de les 
cadrer dans les cellules en les fai- 
sant précéder des préfixes sui- 
vants : 

"<" — aligne à gauche dans la 
cellule, 

" = " — centre au milieu de la 
colonne, 

" > — aligne à droite dans la cel- 
lule. 

Ces caractères doivent précéder 
immédiatement la chaîne et ne 
seront pas pris en compte sur le 
tableau, si ce n'est pour provo- 
quer l'alignement souhaité. 
L'appui sur la touche "/" provo- 
que l'affichage d'un menu dérou- 
lant avec explication des options 
sur la ligne suivante. Le passage 
à l'option suivante se fait avec la 
flèche à droite "— " qui revient 
en début de ligne après la der- 
nière option. Le choix d'une 
option se fait avec la touche 
"COPY". Enfin, dans le cas où 
cela est nécessaire, la remontée 
dans les choix du menu peut se 
faire avec la touche "DEL". 

DESCRIPTION 
DES OPTIONS 

Option feuille 

GLOBAL 

Format — permet de redéfinir 
pour l'ensemble du tableau le for- 
mat d'édition des nombres état, 
étant précisé que les cellules pour 
lesquelles un format particulier a 
été précédemment spécifié ne 
seront pas modifiées. 
Largeur - Colonnes — permet de 
redéfinir de toutes les colonnes 
du tableau la limite de 1 à 77 
caractères par colonne. 

INSERT 

Ligne — crée une nouvelle ligne 

au-dessus de celle occupée par le 

curseur. 

Colonne — crée une nouvelle 

colonne avant celle occupée par 

le curseur. 



EFFACE 

Ligne — efface la ligne sur 
laquelle se trouve le curseur. 
Colonne — efface la colonne sur 
laquelle se trouve le curseur. 

LARGEUR COLONNE 

Permet de modifier la largeur de 
la colonne sur laquelle se trouve 
le curseur. 

TITRE 

Ligne — permet de préserver une 
ou plusieurs lignes de titre en 
haut du tableau, qui ne seront pas 
effacées lors des mouvements 
verticaux. Ce sont toutes les 
lignes au-dessus du curseur lors- 
que l'option est choisie qui sont 
préservées. 

Colonne — même chose avec les 
colonnes à gauche du curseur. 
Les deux — même chose à la fois 
pour les lignes et les colonnes. 
Efface — annule toutes les zones 
préservées pour des titres par les 
options précédentes. 

Fonction Bloc 

Un bloc est un ensemble de cel- 
lules juxtaposées constituant une 
forme rectangulaire. 
Lorsqu'un bloc doit être sélec- 
tionné, les coordonnées de son 
point de départ sont affichées. 
Elles peuvent être modifiées en 
déplaçant le curseur avec les flè- 
ches. Ces coordonnées sont alors 
fixées en tapant sur le point ".". 
Il est ensuite possible de définir 
un bloc en fixant les coordonnées 
de l'angle opposé du rectangle. 
Ces coordonnées peuvent être 
fixées, soit en utilisant les flèches 
et en appuyant sur "ENTER", 
lorsque le point choisi est atteint, 
soit en les tapant au clavier et en 
appuyant ensuite sur "ENTER". 

FORMAT 

Cette commande permet de défi- 
nir le format d'édition des nom- 
bres compris dans un bloc selon 
les modes suivants : 
Général — la donné est conser- 
vée telle qu'elle a été choisie. 
C'est le format pris par défaut à 
la mise en route du programme. 
La zone entre parenthèses est 
vide. 
Fixe — permet de fixer le nombre 



de décimales figurant à l'affi- 
chage entre et 9. Entre paren- 
thèses, on trouve la lettre "F" 
suivie d'un chiffre indiquant le 
nombre de décimales choisies. 

EFFACEMENT 

Cette fonction permet de blanchir 
complètement un bloc du 
tableau, et par conséquent de 
récupérer de la place mémoire. 

Option Copie 

Il s'agit de l'une des fonctions les 
plus intéressantes de ce pro- 
gramme. Avec elle, il est en effet 
possible de copier une cellule vers 
un bloc. Si la cellule d'origine est 
une donnée, elle sera recopiée 
telle quelle dans toutes les cellu- 
les du bloc, ce qui, dans la plu- 
part des cas, présente peu d'in- 
térêt ; mais s'il s'agit d'une fonc- 
tion, la formule sera recopiée en 
tenant compte de la translation, 
ce qui évite de réécrire des séries 
de fonctions ayant la même 
structure (exemple : totalisation 
de lignes ou de colonnes). 
L'emploi est similaire à celui des 
blocs. Une fois l'option sélectio- 
née, il faut se placer sur la cellule 
à copier au moyen des flèches, 
puis appuyer sur "ENTER" sans 
définir de seconde coordonnée 
puisqu'il ne peut être fait la copie 
que d'une seule cellule. Le pro- 
gramme demande ensuite les 
coordonnées d'arrivée qui sont 
sélectionnées comme pour un 
bloc. 



Option fichier 

Cette option permet de sauvegar- 
der la totalité du tableau sur cas- 
sette ou sur disquette après avoir 
indiqué le nom sous lequel il doit 
être enregistré. 

Il est possible ensuite de le relire 
dans les mêmes conditions. 

Option Impression 

Cette option permet d'envoyer la 
totalité du tableau sur impri- 
mante. 

TITRE 

Permet de choisir un titre qui sera 
imprimé en tête du tableau. 



CONFIGURATION 

Cp/lignes — permet de détermi- 
ner le nombre de caractères par 
ligne en fonction de l'option qui 
sera prise sur l'imprimante. De 
cette manière, un tableau qui ne 
tient pas sur une seule page 
pourra être édité sur plusieurs. 

Codes — permet d'envoyer à 
l'imprimante des caractères de 
contrôle pour effectuer sa confi- 
guration. Ils devront être spécifiés 
sous forme décimale comprenant 
obligatoirement 3 chiffres et cha- 
que code étant séparé par un tiret 
(exemple : 027-091-052-119). 



Exécution — lance l'impression 
lorsque tous les paramètres sont 
fixés. 

Tous les paramètres fixés pour 
l'impression (titre-configuration) 
sont mémorisés dans le tableau, 
et seront conservés pour les édi- 
tions ultérieures, même après une 
sauvegarde. 

Compte tenu de la relative lenteur 
du Basic, il n'a bien entendu pas 
été possible d'envisager un 
balayage systématique du 
tableau pour remettre à jour les 
formules après chaque saisie. La 



mise à jour n'est donc effectuée 
que lorsque le curseur passe sur 
la cellule, ou lors d'un change- 
ment de page, ce qui actualise 
toute la page. 

Il est à noter que la touche "CLR' 
permet de ramener le curseur en 
position home (A1). 
La modification ou l'introduction 
de nouvelles fonctions peut se 
faire en insérant, après la ligne 
21 90 ou à sa place, un nouveau 
test conditionnel avec le nom de 
la foncttion (3 caractères obliga- 
toirement), envoyant sur les 
lignes à créer qui traiteront cette 
fonction. 



10 CLEAH:DEFINT a-:;rlODE 2:BÛRDER bINK 

O.OîIWi 1,13:PEN I2,0:PAPER K.lirBHO.f] 

:PAPER«,i:SP£EB WRITE IsDE^REW. 

20 ON ERR0R 60Î0 2500 

30 DEF FN centrai, h )=SPACESUNTUh-i£N< 

«t))/2))+a*+SPACE*({!ï-L£N(âSi)/2i 

40 DEF FNti{a)=HIDÎ(5TR$<a),2) 

50 KEY DEF G,1,150:KEY DEF 2,1,151:K£Y D 

EF 6,Ï,152:KEY DEF i,J,153:K£Y 150,CHRi< 

13]+CHRS<240):KEY 151,CHR*U3>+CKR*<24n 

:KE¥ 152,CHR*(13HCHRi(242):KEY 153, CHRî 

U3HCHRi{243) 

60 FÎN=15:FÏN1=3S:DIM A$(FIN.FINl>:h=7;H 

»=• ! •i&*iîBM:M;¥=l!¥i=Ï!xl=i:a 

$(O,0)="7*:aS<0,l)=' " :al*=* J' :F0R 1=1 T 

FIN:A*(I.0)='7 ':N£XT hGOSUB 1190 

70KEY i50.CHRi(13HCHRtl24Q):KEY 151, CH 

H*(13i+CHRî(241):KEY i52.0ffit(13)+Cr!Rt(2 

42):KEY 153,CHR*U3)t-CHR*(243) 

80 RFJ1 déplacement curseur 

90 *=x+dx!ij=u+du:)il=xl+dshtjl-yl+dyi 

100 IF xt<VAL(a*10,3!) OR xï>f in THEN PR 



SON VIDEO 

«'• 2000 
V MICRO 
AQUITAINE 
AMSTRAD J2B1Ç 
THOMSON ** 

f S commodore 

31, cours de l'Yser 
33800 BORDEAUX 
Tél.: 56.92.91.78 



IhT CHRS(7):X=X-DX:X1=X!-DX1 
110 IF uKVAL(ai(G,4)! OR jjl>f»l THEN P 
RMT CHRi(7):Y=¥-DY:Yl=Yl-DYl 
120 S0SUB 35û:LOCATE I,V:PSINT CHRî(24}; 
:G0SUÎ 540:PRINT CHR$<24S; 
130 ÏF bloc>0 THEN RETURN 
1+0 10CATE ii,t,l:aS il:PRMTtl,CHRÎ(64 
*xl);U£ING , 8# , :ul::PRÎNT ftl.'ï' ; i!F s=2 
THEN PRINTit,v* ELBE PRINT Sl,'(';s*:'!' 
;HIDttASfXÎ,Yl),2) 

150 dx=0:dy=0:dxl=0:dyl=O:5O5U8 2450 
160 IF bl=2 AND (ASCfat) (OR ASC(a.l$))*î 
THEN bloc* (bloc AND 1)+1 
170 IF ASC(at)<240 GOTO 280 
180 L0CATE x,y:60SUÎ 540 
190 ON ASCiatl-239 6ÙT0 200,210,220,230. 
240,250,260,270 
200 Du=-1:DY1=DY:GOTO 90 
210 Dys+I:DYl=DVs5QTQ 90 
220 Dx=-VALfaStxl-l,Q)):Dx!=-l:G0T0 9O 
230 Dx=+VALfâSUÎ,0n:M=+l:6OTO 90 
240 Dyi=-22+b:DY=dgl:S0T0 90 
250 Byi=*22-bîdy=dîjlî6ûT0 90 
260 IF d*l THBÎ PRINT CHRÎ(7):50T0 90 
262 dx!=d-xI:WHILE 7°+d*-a: l JAL<a$Ul-l+d 
xi, 0)i AND xl*#I>]+cjdx*(k--Vffl-(a$(jil-l* 
d!tl,0))idK^dxl-l:l«ND:Qx=-BO:^l=dïl+ïl 

-£t-C 

265 GOTO 93 

270 UHILE 79-x-dx-a>=','flLiftî(MIN(Xl+2ïl.f 
irO.0)) AND Kl+dxl<sfin:TÎX=DX+VALfA*(ltî+ 
KI,Q*):DXi=D!U>iîlENBîïF xl-Kfel-Kfin T 
HEN dxl^INixH-dxl-d-c.fin-xl) 
275 GOTO 90 
2S0 IF bloc>0 GOTO 90 
290 ÏF ASC(aSS=î3 GOTO 90 
300 IF a*=V THEN ËOSUB 75G:G0T 70 
310 IF AS£!Aî)=16 THEN d=l;&)SUE 1680:50 
10 90 

320 IF a*txi,ul>=" THEN a$îxï,yl!=' ' 
330 L0CATE li,t,2:PSINT#i.at;:LINE INF'jT 
ll,ïl:aî(xl,uU=LEFTJ{aï(id,«n,lHst+v 
ïiLOCATE x,u:50a-E 540;SùT0 90 
34Q GOTO 90 
350 IF X<1 THEN D=D*Qyl:X=I-Di:G0T0 400 



360 IF X+yAL<AÎUl,0))>79-A THEN Mt+dsl 

:SOT0 400 

370 IF Y<1 THEN Dl=El+dy:¥=¥-0T:G0T0 400 

330 IF Y>22-E THEN Di=Dl+dy:Y=Y-DY:G0T(j 

400 

390 RETURN 

400 CLSI2:L0CATE i2,!,l:i=d+c:xi=3 

410 IF P0Si!t2}+UAL(aJ(i,0))-l>=79-a G0TÛ 

440 
420 IF i=xl THEN xi=P0S(*2I 
430 b=VAL(a*U,0)):PRÏNT i2,Fli centî'CHR 
Îi64nï,h);:i=i+1:IF i<=fin AND P0Si#2)> 
1 S0T0 410 
440 U=ï-1 

450 CLS»3:L0CATE #3,1,1 :F0R l^it*b T0 El 
+2i:PRINT*3,USINS'H';ï;;!F i=yl T>B! y= 
VP0Si*3)-i 
460 NEXT i 
470 CL5:d2=xl:d3=shL0»TE fi],l,l:LOCfiT£ 

«4,1, ÏiLOCATE #5,1,1 
4B0 IF a>0 THEN CLS*4:F0fi yl=l T0 b:F0R 
xl=d+c T0 ix-c+liE=4îSfl5WB 540:NEXT xl:P 
RINTi4:!CXT yl 

490 IF b/0 THEN aS#5;F0R y!=di*b T0 MIN 
lfinI.dl+23-b>:F0R xl--l T0 cie=5:G0SUB 5 
40:N£XT xî:NEXT yl 

500 e=0:F0H yt=dî+b T0 MIN!lial,dl*2il:p 
o=l:F0fi xl=d+c T0 ixi IF MIDî(A$m,¥i), 
310" THEN L0CATE po, ¥î -rfi * I -b : G0S-JE 54 


510 P0=Pû+!ftL<a*(xî,G)h?OT stîîNEXT ul 
520 Ki=o2îyl=S:IF xi=û GOTO 35G EL5E «= 

530 RETURN 

540 RECM M^s en fera* des dointes 

550 5=0:vlï-":vt=MIDt(aîùl,ul),2;:;i=W 

L(a*lxI.0)):5Î=LER*!s$(xl,yn,li:IF sî= 

" THEN s*=aïi0.i> 

560 IF ïî=" THEN 5*=a*!Q,n:PRÏNT Se.SP 

AC£t(lïl;:RETURN 

570 nd=ASC<sî>W0 10:vl4=v$ 

530 IF ASCivïK48 OR AStlv*>=64 GOTO 1% 



590 IF VAL(v$K>0 E0T0 670 



600» s=2 


1022 FOR j=FINl T0 yl+t STEF-l:F0fi i=l T 


TO FINfFÛS j=Q TO FINl!pRIMT#9,a$!i, j) : 


È1P ON ASC(vî)-59 GOTO 630,640,650 


FlN:aï!i,j^aï(i,j-l):NEXT i:NEXT j 


NEXT jiffiXT i:CL0SEOUT:USNDOH SWAP S.lrfi 


620 Vlï=tEFI*(V$+SPAŒ*(B0),H):G0T0 660 


1030 FOB i»l T0 FINsai(i,yl)=":ffiXT i:E 


ETURN . 


É30 vH=HI0SCvi*SPACE*{fiOÎ,2,b)!fiOTO 660 


0SJ! 470: GOTO 750 


1390 MINDOH S«AP 0,1:OFENIN nf*:F0R î=0 


640 vl*=FN cent*miDï(v*.2ï.h):GOT0 660 


1040 FOR i=FlN T0 xl+1 STEP-UF0R j*I T0 


TO FIN:FÛR j=0 TO FM:LIf€ INPUT»9,atii 


650 vl$=SPAŒi(b-LEN{v$itî)-H1IB$[vt,2î: 


Fim:aï(i,.jl=a$(i-l,jhî£XT jiNEXT i 


,j):NEXT jîNEXT i:CtOSEIN:HINDOH SHAP 0, 


S0Î0 66& 


1050 FOR j=î 10 FINlîa*lKl.j)="îKEXT j: 


1:Q0SUE 400:GÛTO 1680 


660 PRINT te,vl*j:RETUfiN 


SOSUS 47Q:G"0rO 750 


1400 u*=e${5) 


è70 IF s*=" * THEN s=l:5Ï=a*(C,l>:"* ; ASC 


1060 ut=ȕ:GOT0 800 


1410 RESTORE 2420:SOSUB 2320:60501 1580: 


<st) WD 10 


1070 yï=BÏ!3) 


IF ASC(ai)=S7F TIEN u$=aï:50TQ 750 


6B0 ÎF 5»=' ' THEN PRINT #e,LEFÎS(STRîiV 


10B0 RESTORE 24GO:G0SUB 2320:S0SUB 1530: 


1420 s$=u* 


AL(v*))tSPACE*(80),h);:RETURN 


IF ASClaï)=S7F THfN u*=b*jS0T0 800 


1430 Î=1îOS choix 50TO 1440,1450,1510 


690 vit=LEFT$<vi+SPACEï!S0!,h) 


1090 ON choix 50TÔ 1100,1120 


1440 as II:PHÏNT#1, "Titre : ' ',:n=ëiw=9t 


700 IF A5C(sl)\10=l THEN ut=STRING*<h-MI 


1100 FOR jsyl TO fini-lsFOR i=l Tù fin:a 


SOSUB 24BQ:S0TQ 1410 


N(h,nd),35)isî= , F'+FNtt!nS):IF nd>Q THEN 


*[i,jl=a*(i,j+l):NEXT i:NEXT j 


1450 ut=a$!2) 


u*=«ID$t!i* t 2)+*.'+STRIN6S-fRb,35} 


1110 FOR i=l TO fin:aï(i,fint)=":fOT i 


1460 RESTORE 2430:60SUB 2320:50SUB 1580: 


710 IF ASC!si)\10=4 THEN ut=STRING*(HAÏi 


i&QSUB 400: RETURN 


IF ASCU*)=i7F THEN u$=nt:G0T0 1410 


h-5,m,35)+VMPïs**'B2'ïSQTQ 730 


112G FOR i=xl T0 fin-l:F0R j=I T0 finha 


147&si=u» 


720 IF ASC(5t)\10=2 THEN uï=STRlNSÏ(fJ«! 


ÏU,j)=a*fH-l,j):NEXT jsNEXt i 


1480 ON choix GOTO 1490,1500 


0,ti-nd-2),35)+ , « , +STRINSî!nd,35H-'%';EÎ= 


1130 FOR j=l TO finl!flt(fin,j)=":NEXT j 


1490 as ll:PRINTtl,'Nbre de caractères/ 


■p"4FHW(nd):PRI»T ie,USÎNG Uî;VAL(y»î*! 


îGOSUB 400: RETURN 


page s'iinmwFlQsGOSUB 2480iGOT0 1400 


00;: RETURN 


11*0 n=xls«=0:fiOSUB 23O0:dxl=I:50SUB 350 


1500 as ti:PRINT*l, 'codes en decisal fx 


730 PRINT te,USIN5 ut;VAL(vï)i 


sdx 1=0: GOTO 400 


xx-yyy.,.) :";:n=0:i=ll:GOSUB 24BO:SOT0 


740 RETUR» 


1150 u*=s*!5):ERASE nS:SOSUB 15S0:IF ASC 


1400 


750 RE» œenus 


(al)=i7F THEN u*=ïiï:G0T0 800 


1510 «ÏDTW 255:e=8:PRINT H8,CHfi*(«AL(fiID 


760 KEY 150,CHRtl240):KEY 151,CHR*f241)î 


1160 ON choix GOTO 1170,1180,1170,1190 


*(at(0,lï),i,3)));:i=i+4:IF i<=L£N(a*(0, 


KEY 152,CHR$l242)iKEY I53.CHRÎI243) 


1170 a*(O,4î=STR*(yn:aS(0,6)=STRt(y):y= 


Ul) SOTO 1510 


770 RESTORE 2350:GÔSOB 2310:6ÛSUB 15B0;I 


1:IF CH0IX<3 S0T0 1680 


1520 PRINT#8,FN ceritS(at(0,9],VALia*iB,l 


F ASCU*1=47F THEN RETURN 


1180 aïfQ,3)=STR*lxl)ïaïiD,5)=STR$ix):x= 


Q))):PRINT#3:PRÏNT#8 


780 ON choix SOÎ0 790,1200,1320,1360,140 


IîSOTO 1660 


1530 b=1 


0,1560 


U9D aïlO^Î^I'iaKO^^M'iaïlO^l^r 


1540 FOR yl=l Tû finl:xl=«:WHILE xl<=fin 


790 u*=n*(i) 


ial(0.6)='l'!50SUB. t680:RETURN 


AND POS(#eWAL(a*(HIN(xl+l,FIN),0)K u A 


803 RE5T0RE 2360:SOSUB 2320:S0SUB 15B0:I 


!20O u«=fl$(2) 


Lfat(D,I0)):G0SUB 540:xl=xi+l:BEND:PRINT 


F ASCfa»i=67F 50ÎO 750 


1210 RESTÛRE 241D:50SUB 2320s60SUB 1580: 


te,CHR*!13>;:NEXT yl:«=xlîIF B (Hn THEN 


B10 i^u* 


IF ASC(a$)=67F GOTO 750 


PRINT*Ê.CHRIfl2)::GOT0 1540 


020 ON choix GOTO 830,990,1070,1140,1150 


1223bJ=u» 


1550 GOËUB 16aO:RETURN 


830uï=etU) 


1230 ON choix SÛTO 1240,1290 


1560 uï=H$(61 


040 RESTORE 2370:6OS0B 2320:60SUE 1580:1 


1240 bl=l:S0SUB B70 


1570 RESTORE 2440:50SUB 2320:G0SUB 1580; 


F ASCiat)=S7F THEN uS=Ht:S0T0 80O 


1250 G0SUB 1700:IF EL=1 GOTO 1240 


IF choix=i THEN RETURN aSE stodeUEND 


850 M=u* 


1260 SOSUS 1820 


1580 REM choix dans un tenu 


B60 ON choix 60T0 870,950 


1270 FOR i=bl TO b3 STEP (S5Nib3-hl) OR 


1590 l=LEN(utl:n=û:choîx=l 


B70 RESTORE 2380î50SUB 2310:G0S0B 1530:1 
F A5C(a$l=i7F Th£N u*=«t!50T0 840 


lïïFOIÎ j=b2 T0 o4 STEP !SGN(b4-b2) OR 1) 
ia*(i,j)=f*+r1IDî(aïU,j>,2>:NEXÎ jiNEXT 


1600 IF N>=L THEN N=0!CH0IX=t 




BB0 ON choix 60T0 B90,9GD, 930,900 
890 f *=' " iGÛTO 94S 






1280 xi=x:G0SUB 47QiRETURN 






900 O.S #l!PHIMT#!,"no»bre de décimales 
:"iVAL(RIfiHT$Ut(0, 11,11)!' "iîINPUT 


1290 60SUB I7D0jGOSUB 1820 

1300 FOR i=bi T0 b3 STEP iSSN(S3-bl) OR 


O OCCCl HOC 




«.•nouvelle valeur :*,ft:0N choix-1 50 
TO 910,1,920 


1):F0R j=b2 TO b4 STEP ISGN(b4-b2) OR 1) 
:aS(i,jl=":NEIT jîNEXT i 


inFDRnim'iauE 




910 f$=CHR»iiO+VAL!f*)!:GOTO 940 


13 10 GOTO 1230 






920 rt=CHfi*(20+VAL(f*n:Ë0TO 940 


1320 r=l:GOSUB t700:bll*=bl2*:r=0:GÛSUB 






930 fJ=CHRïl*2l 


1820:al=bl:a2=b2 






| 940 IF El=l THEN RETURN aSE aSi0,!)=fii 


1330 BLOC=l:BL=i:CLSil:PRINTSl,'C0ORD0NN 


AMSTRAD 




G0SUB *00:RETURN 


EES ARRIVEE : , :G0SUÎ 1730:50SUB 1S20:A3= 


COMMODORE 




950 n=O:»=0:6ÛSUB 2300 

960 FOR 1=1 T0 fin:AI(I,0!=aSiO,Q):NEXT 


B2:A4=B4 

1340 FOR i=bl TO b3 STEP (S6N(b3-bl) OR 


THOMSON 




i:h=VAL(a*(0,0)) 


11:F0R j=A3 TO M STEP (S5N(b4-b2) OR 11 


nombreux logiciels 




970 h*=FN cent*{'î , ,hhd=hxl=l:S)SUÎ 40 



iGOSUB 191Q:NEXT j:NEXT i 

1350 dx=Q:dy=0:XI=X:GOSU! 470:RETUfiN 


et livret 




930 RETURN 


1360 u*=Kiil4):i*(l)=":sï{2)=":G0SUB 15 






990 uS=uS(2) 


30:IF ASC(at)sS7F THEN uï=mt:G0TO 750 


1, rue Barbotin 




1000 RESTORE 2390:GOSUB 2320;GOSUB 1530: 


1370 LOCATE iI,l,2:3NPUT il, 'Nos du iicb 


79300 BRESSUIRE 




IF ASC(a*)=47F THEN ut=ȕ:G0T0 800 


ïer :';nf*:IF choix=l GOTO 1390 


Tél.: |49| 65.26.36 




1D10 ON choix 6GTÛ 1020.1040 


1380 HINDOU SWAP 0. 1:0PEN0UT nft:F0R i=0 








1610 NÎ=INSTIH»+1,U«," *UW «1=0 THEN N 


1820 REM décodage d'un bloc 


+I):ûOSUB 1840 


1=4.*! 


1830 bl=ASC<LEH$fbIlï,l))-64:b2=VAL<RÎS 


2240 opa=¥AL(opi}:SflSUB 2ttf 


162) aS «tsLOMÏE tl,l,î:PRIMT«,L£FT« 


HT$ibllS,t£NîbIl$)-l)S:b3=ASC!LEFT*fbl2ï 


2250 j(a+l^j(ft+l)+ï:l€Nr):j(»+!t=b2:Hft* 


U$,N)!:PHINÎS!,CHM(2*)iMID«(UÏ,N*l,Nl-+l 


,l))-64:b4=VAL(fiI6HT$(feI2*,LEMbI2*)-l)) 


ll=i(iitIHl:HEND;dQp<EN(bI!ÎI+LENibl2I) 


-D;CHa*l2*JiïPHINT#l.RI»4T*<U* I L+l-ftHSï 


:R£TUR!J 


+7:KT0- 2030 


PRINTtl.aîtchoix); 


1840 ba=lNSTP(5,vi,".*):bIH=UPPER»[«IDÏ 


2260 REM 


1630 60SUB 2450 


fv*.6,M-6))ibI3=UPPER*IRÏB*4v*,ba+l I LE 




1640 !F ASC<A*)=*F3 THEN N=M:CHOU=CH0I 


NIv*Hh-1>>:G0SUB 1B20:HETURN 


ltîffi)=opU:¥ÏIn l )=v*:vl=MIDt!aï(op2.op31, 


ï*î:S0TÛ 1600 


1B50 IF ASC(MlDt(vJ,dop.l)i<48 SOTO Î870 


2):G0SUB 1980 


1650 IF ASC(A*)=6E0 0H ASC(aï)=&7F TrEK 


1860 IF dop<L£Nlvt] THEN dop=dop+l :SÛT0 


2280 v$=v*!B):opa^opt:opt=optlBiî;dop=(top 


RETURN 


IB50 


!B):oplt=opi$fra);ppt=STRÎiopaî:^s-l!lF 


1660 PfiltfT CHS$(7i;:S0TQ Î630 


1870 oplt=LEFTt!rf,i)!op2ï=UPPERÏ(HIDt{v 


s=-l THEN ta=D 


1670 RETURN 


$,2,l>)îop3*=«lD*(v« 1 3,dop-2):Dp2=ASC(Qp 


2290 RETURN 


1680 a=VAUaï(G,5))-lic=VAL<aitO,3)M:b 


2J)-64:op3=VAL(op3*l 


2300 G.S#1:PRINT»L' largeur coïonite s';: 


=VALUÏ(0,6))-l:WiNDOH 10,3*3,80,4^,25: 


1BS0 IF VAL(op2t)>0 THEN opS^IDï!v»,2,d 


80SUÏ 2480; ÏF VALUtln.aJ-Xl OR VAUafln 


xi=VAL(a$!0 ( 3!):yl=UAL(aSf 0,4)1 


op) ELSE Dpt=HIDS(a*(op2,ap3),2) 


,a)î>77 THEN PRINT CHR$(7):S0T0 2300 as 


1690 U!ND0W«l,3+a,8O,4+b,25:WINDCy#l,ï,8 


1890 IF op*=" THEN opJ='0" 


E RETURN 


Q.l, 2: WINB0H#2, 3+a.80,3, 3:ttINBOtf#3 t 1,2,4 


1900 RETURN 


2310 READ u* 


+b,25!«ND0U *4,3+a,80,4.4+b:yiNDCpH «5,3 


1910 vï=MID$(aïial,a2),2):rf(i,j)=flIDï(a 


2320 Ï=I 


,3+a,4+b,25:50T0 400 


Ki,j),2)!lF at!i,j)=" THEN at(i,j)=' ' 


2330 READ Mi(I):I=I+l:IF «SCMIÛT/ 50 


1700 REM POINTAGE D'UN BLOC 




TO 2330 


1710 ÎL0Ol:bl=l 


1920 IF ASC(v*l=64 THEN GOBUF 1840;a*ii, 


234D RETURN 


Ï720 CLS*I:PRINTH, "coordonnées du bloc 


j)=LEFT*(a$<al,a2!,7)+CHR*!bl+i-ai+64)+S 


2350 DATA feuille bloc copie fichier isp 




TRïIb2+j-a2)+'.'+CHR*(b3+i-ai+641+STRÏ!b 


ression fin, global insert efface largeur 


1730 LOCATE ll,IB*(bl*4J,l;PRlNT#l,CHH*i 


4*j-a2)+'l"!RETURN 


-colonne titre, forsat effacefrent.CBpie d 


6*+xl)iUSINS , « , ;yî; 


1930 IF ASCfv$K48 THEN 60SUB iE30:aî!i, 


'un bloc, lecture sauvegarde, titre config 


1740 SOSUÎ 150 


j)=a*{i,j)+opl*+CHRï(ASC(Dp2St+i-an*HID 


uraticn exécution, non oui.O 


1750 IF bîU=CHR«(64+nl)+STR*(yI) TK£fJ b 


$(STR*(VAUap3S)+j-a2),2):v*=MnW!vS,dDp 


2360 DATA forsat largeur-colonne, ligne c 


loc=2 


»!dop=2;50T0 1930 


□lonne, ligne colonne, codifie la laroeur 


1760 IF ASCiat)=S7F THEN bI=l:bîoc=D:RE7 


194Q IF dop<>2 THEN a*(i,j»a*(al,a2) 


de la colonne ou se trouve le curseur, li 


m 


1950 RETURN 


□ne colonne les-deux efface,0 


1770 IF ABC(â*)=l3 THEN bl2t=CHHJi64+xl) 


1960 'opérations 


2370 DATA format d' i»pres5iom de tous le 


+STR*(yiJ:bI=Oïbîcc=D:bIi«=bl*ïRETURN 


1970 ca=0:«=-l 


s chiffres, modifie la largeur de toute 1 


1780 IF r=l AND at=V THEN PRINT CHRI'7 


i960 opt=0:dop=l 


es colonnes,0 


):60T0 1800 


1990 U4ILE dop<LEN(v«)îrt=«ID«(v*,oop) 


2380 DATA aérerai fixe monétaire pourcen 


Î790 IF ■***,' ÏÏEN bloc=2:bl=2:Bl$=CHR» 


2000 IF ASC(v*)=64 THEN 50T0 2170 ELSE d 


taoe,ne change pas la donnée, virgule fia 


(64+xli+STM(yl):PRiNT(tl, , , , i :S0SUE 2450 


od=2:S0SUB 1850 


ttante.sous fome de francs, sous forae d 


ilF *SCIa*K123 THEN PRINTtl,a*;ïLINE IN 


2010 IF ASCiop$)<48 OR ASClopt}=64 THEN 


e pourcentaoe.O 


PUT *!,M:bl2*=UPPER»(a*)+' *+b$:bl=0:bi 


SOSUE 2260 


2390 DATA insert une ligne avant le curs 


oc=0îbll«=W$:Œ7URN ELSE 60BUB 160 


2020 opa=VAl(opï):GOSUB 207Q 


eur, insert une colonne avant le curseur, 


1800 alW» 


2030 WEND 





1BI0 60Î0 1730 


2040 IF ca=l THEN RETURN 


2400 DATA efface la ligne sous le curseu 










2060 IF opl(='sus* THEN RETURN 

2070 ON ASC(opl$)-41 60TO 2090,2110.1,21 








efface les données d'un b!oc,0 




S'ils sont quelque part 


30,1,2150 
2080 RETURN 


2420 DATA entrée d'un titre, cp/ï ignés co 
des, lance 1' impression, 




c est chez 


2090 REM «implication 


2430 DATA nbre de caractères/ ligne, envoi 




Aticwfi&tie j 


2100 oot=opt*opa: RETURN 


de caractères de contrôle, 




2110 REM addition 


2440 DATA revient au taoleau.retourne au 




u 


2120 opt=opt+cpa: RETURN 


basic.O 






2130 REM soustraction 


2450 a»=INKEY*:IF a$=" SOTO 2450 




AMSTRAD 6128 


2140 opt=opt-opa; RETURN 


2460 RETURN 












AMSTRAD 8256 


2160 opt=opt/opa;RETURN 


90 






2170 REM opération diverses 


2480 cl=P0S{#l):PRINTH,aîin,n)i!60SUB 2 




et les derniers logiciels. 


2180 SOSUÎ lS4G:opl*=f11M!v*,I,3> 






2190 IF opl*= , sum* GOTO 220D 


S(ll):PRINT*l,CHRI<20);aî;:INPUT il,",t 






2200 i(m+i)=bl!j(*+li=b2 


*:a!(n,«)=êi+t* 






2210 WHILE i(si+l)<=bj 


2490 RETURN 






2220 HHILE i(a»iK=b- l :Dpï-MBt(at(i(™+î) 






78000 VERSAILLES 


,j(B+l)),2):IF op$=" THEN qs$='Q' 


REUR , iCHRt(2*)ïCHgï(71;POKE 6808E,140ïFÛ 




Tél.: 30.21.75.01. 


2230 op2=iis+l)iop3=j(*+li:IF ASC(opt)<4 


KE 480BC,174:PRINλl,CHRt!243);SPC(10)i 






8 OR ASC(op*)=64 THEN GOSUB 22iQ :**=¥*<& 


2510 RESUME 150 



20, aie de Montreuil 94300 VINCENNES - Tél. : (1) 43.28.22.06 

OUVERTDUMARDIAUVENDREDIde10h30a]3hetile15nai9h.LEaftMEDIde10h30â19h 

REVENDEUR OFFICIEL AMSTRAD FRANCE 

LOGICIELS CASSETTE 



I I 



# 



K> 



is dir» "bonjour", "gagné" oi 



• virtuelle. Des routines d exploitation 



l*l 



□ lad mai" 

□ rallyll 



3 3 «n.» oo» 



39 F star avenue- 



accEi ob;ci wwt ' ■ 



Dut»» 


Dwortdiup'jo'hi' 
D»luiV.innfU»C: 




Dp,»-» 


~3D' .■ 
□ «™p"t 
D arphec Ips.ianr. 


D ■iWljln 

D 3 D grand p, , 


n macadam bump^ 

Tgraf ■■■ 

acak 

Liaur- -.;.'-,■ 
Mai 

□ (il! 


Jtnicr; ii pi 





'auciFBbui (Irs-V4 a> 
niduCPf 



IS- TAU 



'6CI Diurtoion 

ig juui AMSTFW. 



lier Dmpm 

DpHkittHlRdui:PC MF _ le li v 

□ DDIHIRMWA3E M5 F _ les r. 

Dconcitf Mst«(i 'I.J1M IU F Dann 

uad 110 1 

»■«, gai 

kCFC*M 1Z91 Omicr 

espi Crt»Sl 149F Damstn 



D AMSTRBL i 



OU» 



" £?£ la 



Possibilités de crédit partiel ou total 




G ne soyez plus collé à f écran, rallonge 1 30 F 



intmftce prima ;-^^ 



CtMe wnwie AMSTRAD 

Vous permet de connecter votre AMSTRAD à 

D câble imprimante 1 



Q carte 8 Vk. . . 



niMMENT COMMANDER ; Cocher lels) amclelsi désrrél: 
NOM ORDINATEUR CCI 



part - Fartes le total + 
i GCPC464co 



< port (20 F pour achats inférieurs à 500 F. 40 F de 500 à 1000 F. 60 F pour acl 

DCPC464 monochrome D CPC664 couleur DCPCFjf 

CODE POSTAL VILLE 



Mode de paiement : □ chèque / □ mandai / □ contre-remboursement (prévoir 20 F de frais) - envoyer le 



: ORDIVIDUEL 20. me de Montreuil 34300 VINCENNES. 



Ceux d'entre vous qui ont fente de foire une représenta- 
fion graphique d'un ensemble de données et ont connu 
les affres des paramétrages X/Y, des graduations d'axes 
et des décalages en tous genres. Finis, ces casse-fêtes .' 

Ce logiciel se charge de tout. Il 
trace les axes, les graduations, 
leurs valeurs, les légendes, les 
unités, le titre et bien sûr la 
courbe en haute résolution ; à 
l'écran et si vous le désirez sur 
imprimante. A partir de quoi ? Au 
choix : des données entrées en 
désordre, ou bien une formule 
mathématique même ultra 
complexe ! Ajoutons à cela les 
options sauvegarde/chargement, 
l'accès aux coordonnées polaires, 
les modifications d'axes et les 
sécurités pour étourdis. Un rêve 
tout cela ? Non, mais 9000 
octets à taper... 
Ce n'est pas un gadget, c'est un 
vrai utilitaire. 




L'ESPRIT 

DU PROGRAMME 

Pour se "promener" dans ce logi- 
ciel, il suffit d'avoir toujours en 
tête la chose suivante : 
Le tableau des données à repré- 
senter sous forme de courbe est 
totalement indépendant de l'en- 
semble des paramètres de tracés 
(limites d'axes, légendes, etc.). 
Autrement dit, on peut conserver 
nos axes pour d'autres données, 
ou changer les axes pour ces 
mêmes données. Souplesse 
totale et "bidouilles" sans limi- 
tes... 

C'est le sous-programme TRACE 
qui assemble ces deux domaines. 
Il peut enchaîner sur un "HARD 
COPY" d'écran sur imprimante 
(utilisant les codes standard 
EPSON). 

Les options fichiers (sauvegarde, 
chargement) ne concernent pas 
l'image d'écran, ce serait long 
(16 000 octets) et absurde : ce 
sont les valeurs de ces deux 
ensembles. Après chargement, il 
suffit de demander l'option 
"Tracé" pour retrouver le graphe 
en moins de cinq secondes. 
Le programme est conçu en 
"structuré", c'est-à-dire que cha- 
que module est appelé par 
GOSUB du MENU (lignes en 
1 000), pour revenir à ce menu. 



Rassurez-vous, il n'est pas obli- 
gatoire de tout retaper. Vous 
pouvez vous dispenser du 



module "Instructions" (1500) et, 
si vous n'avez pas d'imprimante, 
des modules 1 1000 et 58000. 

La définition des axes 

(option A, lignes 2000 à 2600) 
On vous demande d'entrer les 
limites mini et maxi pour les axes 
"X" (horizontal) et "Y" (vertical) 
du graphique. Deux impératifs : 
— il faut que ces valeurs ainsi 
que leurs différences (dX, dY) 
soient des nombres entiers 
( = non décimaux) avec au maxi- 
mum deux chiffres "significa- 
tifs". Exemples : 0, 1 , 23, 460, 
-65000. Sont interdites des 
valeurs telles que 2.5,11 5, 2050 
ou 0.5. Le risque serait d'être 
piégé par ia différence. Exemple : 
mini = 25, maxi = 140, mais la 
différence est 115 : le pro- 
gramme vous le signale, et vous 
renvoie au départ. 
On demande également (faculta- 
tifs) un titre, légendes et unités 
d'axes ; ils apparaîtront sur le gra- 
phe. Puis, le programme établît 
ses coefficients de traçage (lignes 
2200 à 2600). Voir ia liste des 
variables. 

Le tracé des axes 

(lignes 3000 à 4200) 
C'est très complexe, mais rapide. 
Le logiciel trace les axes X et Y, 
puis, a l'aide des coefficients pré- 
cédents, il détermine (en MODE 
2) quelles vont être les gradua- 
tions les plus rationnelles, aux 
pas de 1 , de 2, de 1 0. Il trace les 
petits traits de graduations, avec 
des tailles différentes pour les 
valeurs en '5" ou en "0", 
comme sur un double décimètre, 
fl écrit au-dessous (X) ou à gau- 
che (Y) leurs valeurs bien cen- 
trées en face du trait. 
Pour la clarté de lecture, il n'écrit 
que les deux premiers chiffres, 
sauf trois pour le nombre "100". 
Ainsi, une échelle de 63000 à 
78000 sera "numérotée" de 



"63" à "78" ; mais les limites 
réelles* 63000-78000) seront 
rappelées à côté. En revanche, 
une échelle de -3 à + 10 sera 
effectivement numérotée de -3 
à + 10. Tous les "cas de figures" 
ont été envisagés afin de fournir 
des graduations claires et lisibles 
(ce fut d'ailleurs un sacré casse- 
tête). 

L'entrée des données 

(lignes 5000 à 5400) 
C'est un écran de saisie à trois 
colonnes, le numéro (affichage 
automatique), valeur X, valeur Y. 
En fin de saisie, entrez en X la let- 
tre "Q". Le nombre maxi de 
points a été fixé à 102. Vient 
ensuite le tri de ces données en 
valeurs croissantes de X. 
Vous venez de remplir le tableau 
DIM PT(102,1) (PT venant de 



"Points"). En "colonne" zéro, la 
valeur X, en colonne 1 , la valeur 
Y. Le nombre NF est le nombre 
de "points", de "lignes" dans ce 
tableau. 

L'entrée de formules 

(lignes 6000 à 7010) 
Un luxe que peu de micro-ordi- 
nateurs autres que l'AMSTRAD 
peuvent se permettre ! Une curio- 
sité du CPC est que l'on peut l'ar- 
rêter (par END ou ESC), modifier 
ou ajouter une ligne de pro- 
gramme, et repartir par un GOTO 
sans prendre les variables en 
RAM (essayez donc cela sur un 
autre... ). 

On stoppe par un END (6080) et 
on vous invite à entrer la ligne 
7000 contenant votre formule. 
Ceci fait, tapez ENTER, puis le 
point décimal du pavé numérique, 



LEGENDE DES VARIABLES 


C$ 


Chiffre droite de graduation 


D$ 


DONNEE entrée 


DX, DY 


DELTA X,Y 


DXE, DYE 


DELTA ECHELLES X,Y 


FAXY 


Flag axes X,Y définis 


FICHS 


Nom du fichier enregistré 


FIMP 


Flag demande impression 


FQ 


Flag demande de quitter 


FTRA 


Flag demande de TRACE 


H 


Hauteur d'un repère 


I, K, N 


Eléments de comptage 


LQX$, LGY$ 


LEGENDES X, Y 


MINY, MAXY 


MIN, MAX des Y calculés 


MX, MY 


MAXI X, Y 


MXE, MYE 


Maxi échelle X, Y 


NF 


Nombre total de points 


OX, OY 


Origines X, Y 


OXE, OYE 


Origine échelle X, Y 


PT (102,1) 


Coordonnées des POINTS 


RGX, RGY 


Rapport graphique 


RGXE, RGYE 


Rapport graphique d'échelle 


ST, STX 


STEP de FOR NEXT 


TEX$ 


LISTE d'OPTIONS 


TITS 


TITRE du graphe 


UXS, UY$ 


UNITES X, Y 


VG 


Valeur d'une graduation 


Z 


Valeur de X dans PTI1.0) 



ce qui équivaut à GOTO 6500 + 
ENTER (voir ligne 120). Votre 
échelle des X va être divisée en 
100, donc 101 points calculés 
par votre formule. 
En lignes 6530 et 6550, vous 
pourrez vous étonner que l'on 
remplace la valeur de X par Z 
avant calcui. C'est une astuce qui 
va nous servir pour des "cas spé- 
ciaux" que nous verrons plus 
loin. 

A mesure que cette formule rem- 
plit notre tableau PT en Y calcu- 
lés, les variables MINY et MAXY 
gardent en mémoire la valeur mini 
et la valeur maxi de ces Y. 
En fin de calculs, ils sont affichés 
et s'ils débordent de vos prévi- 
sions, vous avez la possibilité de 
redéfinir les caractéristiques de 
l'axe des Y. 

Le tracé 

(lignes 8000 à 8200, option T) 
Très court puisqu'il reprend le 
tracé des axes en enchaînant sur 
des DRAW de "point en point". 
Durée moyenne une seconde et 
demi... 




1 ARCHAMBAUL T' ^^_^ ,^_^_ J | 

rRACEUR DE( GRAPHIQUE 



EVOLUTION DE L'EFFECTIF DU CLUB 
Numera X Y 



SECIZUJt 228 ItOLTS 



ANNEE ADHERENTS 


?t.00B 


49.00a 


75 


000 


64.000 


74> 


IflBB 


BS.B00 


77 


000 


71.000 


/U 


1300 


91. «00 


79 


000 


95.000 


80 


1300 


08.000 


Bl 


000 


19.000 


B2 


000 


04.000 


es 


000 


25.000 


t!4 


000 


48.000 


Bb 


000 


57.000 


UTION RE l/DTKT» BU CLUE 







-3(8 H 388 : «tClï M PHASE 

iKiï^(i«/72fl)»sm<*)iZ:cos(X)!iii.v?îa> 




Quand on l'a assez vu, on appuyé 
sur une louche quelconque pour 
revenir au menu. 

Sauvegarde et chargement 

(lignes 9000 à 10500) 
Ces modules sont conçus pour 
cassette et disquette, donc' le 
nom du fichier est obligatoire. A 
la sauvegarde, si vous répondez 
par ENTER, le nom est constitué 
par les huit premiers caractères 
du titre TIT$. L'extension 
".GRA" est ajoutée par le pro- 
gramme. 

Impression 

(lignes 11000 à 11620) 
Deux variantes : la liste des don- 
nées (pour toutes imprimantes) 
ou le Hard Copy d'écran. Celui- 
ci utilise la fonction TEST ; son 
tracé est très fin, mais il est long, 
environ neuf minutes. 

L'UTILISATION PRATIQUE 

Rappelez -vous l'issue de 
secours : touche ESC puis GOTO 
1000 ( = menu), facile à retenir... 
Le côté amusant est l'utilisation 
de l'option F (formule). Nous 
avons choisi trois exemples "par- 
lants". 
1 — Hyperbole : option A (axes, 



définissez X et Y de 1 à 10. 
Retour menu — option F. Tapez : 
7000 Y=10/X. 

ENTER puis point décimal du 
pavé, retour menu, option T, 
c'est tout. 

2 — Sinusoïde : option A, défi- 
nissez X de à 360 (degrés) et 
Y de - 1 à 1 , puis option F. 
7000 DEG:Y = SIN<X) 

Enter, point décimal, menu, 
option T. 

3 — Cercle. Ça se complique un 
peu... 

Option A = idem que précédem- 
ment. Option F, entrez : 
7000 DEG:Y = SIN(X):Z = COS(X) 
Puis retour menu (option N). Le 
tableau DIM est correctement 
rempli, mais l'axe des X (de à 
360) ne convient plus du tout ! 
Donc, de nouveau option A : X 
et Y, tous deux de - 1 à 4-1. 
Menu, option T. 
Mais, c'est une ellipse ! Oui, car 
les échelles n'ont pas le même 
"étirement". Remédions à cela : 
retour menu, encore option A : X 
de - 1 à 2 et Y de - 1 à 1 . 
Menu, option T : oh, le beau cer- 
cle ! 

Résumons la manœuvre : X (de 
à 360°) a servi à faire 101 cal- 
culs de Y, mais c'est Z = COS(X) 
qui est logé dans le tableau DIM. 
Lorsqu'en option A, on définit les 
limites de l'axe X, ce sont ses 



limites pour le calcul ; libre à 
nous, une fois le tableau rempli, 
de modifier les limites de X (ou de 
Y... ). 

CONCLUSION 

La sortie instantanée de graphi- 
ques va séduire beaucoup d'en- 
tre vous, mais je sens que nos 
amis matheux vont "sortir" autre 
chose que cercles ou spirales 
avec des lignes 7000 longues, 
longues... Envoyez-les nous ! 



PROTEC-PHONIE 
INFORMATIQUE 

COMMODORE 128 

AMSTRAD CPC 
ATARI ST 

PÉRIPHÉRIQUES 

LOGICIELS 

LIVRÉS 

28, rue St. Jacques 

59500 DOUAI 
Tél.: 27.96.06.06. 



1D 'TRASRAPK-TRACEUR DE GRAPHIQUES- (EC3A 

H* IMPRIMANTE) 

20 'AMSTRAD CPC - H. ARCHAMBAULT 1I/19B5 

30 QPENOUT'BIDON'iMEHORY HIP0H : CLOSEOU 

T 

100 DIM PT(102.1) 

110 DEFINT I,J,K,N:ORIGIN 0,0 

120 KEÏ 133,'GÛTO 6500"+™*! 13) 

200 'TITRE 

210 MODE h PAPER 2:PEN 3:CLS 

220 LOCATE 13,5:PRINT *T R A 6 P A P H": 

PENO 

230 LOCATE 5,10:PRINT "Michel Arctambaul 

t - 11 / 1985" 

240 LOCATE 10,15:PRINT "Instructi 

enu ' , :TE(i= , IM*j50SUB 50000 

250 PAPER D:PEN 1:IF K=i THEN SOS 



1000 'MENU 

101D INK 0.1: INK 1.2*: BORDER 1 

1020 «ODE 1:CLS 

1030 PEN 3:L0CATE 2.2:FRÎNT 'T R A C E U 
; R DE GRAPHIQUE B*:PEN 1 

10*0 LOCATE 10,5:PRINT "A - DEFINITION D 
1 ES AXES" 

10*5 LOCATE 10,7:PRINT 'V - VISION DES A 

XES" 

105D LOCATE 10,9:PRINT 'D - ENTREES DES 

DONNEES" 

1060 LOCATE 10,1 IïPRINT "F - ENTREE D'UN 

E FORMULE' 

1D70 LOCATE 10,13:PRINT "1 - TRACE DU SR 

APHIQUE" 

10b0 locate 10,15:print 's - sauvegarde' 
1090 locate 10.17:print 'c - charsement' 

: 1095 locate 10,19:pr1nt ■] - imprimer" 

■1100 locate 10,21îprint "q - quitter" 
1110 pen 2:text='avdftsciq":g05ub 50000: 

;pen 1 

i 1120 on k g0sub 2000, 3000, 5000, 6000,6000 

,9000,10000,11000,12000 
' 1130 GOTO 1000 

2000 'ENTREE DES CARACTERISTIQUES 

2010 CLS:FTRA=0 

2020 PEN 3: LOCATE 1, IiPRINT 'Nombres 

iers/2 chiffres sianif icatifs':PEN 1 

2030 PEN 2:L0CATE io,3:PR!NT "AÏE X I hc 

rizontal I:':PEN 1 

20*0 LOCATE 10,5 : INPUT'Limi te X MINI: " 

OX*:OX=VALiOXt> 

2050 LOCATE 10,6:INPUT'Li*ite X KAKI: " 

KXÎ:KX=VAL(MXï) 
;2060 DX=MX-0X:IF DX<=0 THEN PRINT CHSii 

) :G0T0 20*0 

2070 IF VAL(MID*(STRtlDX),*,lil >0 THEN 

PRINT CHR*<7);"dX a 3 chiffres siquific 

tifs:';OX:FQR 1=1 TO 6OG0:l£XT;G0T0 2000 

2060 INPUT" LEGENDE X: ",L6XÎ 

2090 INPUT" UNITES X: ",UX$ 

2100 PEN 2:L0CATE 10,1D:PRINT "AXE Y 

ertical >;':PEN 1 

2110 LOCATE 10.12:ÏNPUT"Li!site Y MINI 

,0Y*:0Y=VAL10Y*> 




2120 LOCATE lO,13:INPUT'Liidte Y «AXI 
,HYÏ:MY=VAL(MYt) 
2130 DY=MY-0Y:IF DY<=0 THEN PRINT CKRÎI7 
):50T0 2100 

21*0 IF VALfMID*ISTRi(DY),4,l)) >0 THEN 
PRINT CHR$l7);'oY a 3 chiffres signifie; 
tifs:';DY::F0R 1=1 T0 6000: NEXT: PRINT CH 
RJ(17):60T0 2100 
2150 INPUT' LEGENDE Y: ',LGYÏ 
2160 INPUT" UNITES Y: ",UY*:PRINT 
2170 INPUT* TITRE DU GRAPHIQUE: \TITt 
2200 'COEFFICIENTS X 
J2210 RGX=520/DX 
2220 DXE=-VAL<LEFTt(S7R$(DX).3i) 
2230 IF DXE=1Û AND DXO10 AND Oï=û THEN 
DX£=100 ELSE IF m<ill M0 DX<5 THEN DX 
E=DXE*10 
22*0 RX=DX/DXE 
2250 RSXE=520/DXE 

2260 OXE=H0UND!0X/RX):rlXE=R0UND!KX/Rïl 
2300 'COEFFICIENTS Y 
2310 RSY=33D/DY 

2320 DYE=VAL(LEFT*'STR!.<DY1,3>) 
2330 IF DYE=10 AND DYOlfJ AND 0Y=D THEN 
DYE-100 ELSE IF DYEaO AMD DY<5 THEN DYE 
=DYE<10 

2340 RY=DY/DYE 
2350 RGYE=330/DYE 

2360 0YE=ROUND<0Y/RY):MYE=ROUND(MY/RY) 
2500 PRINT:PRINT TAB(6); , Ccrnger,VDir 1 
es axes, Menu ?" 

2510 PEN 2:TEX»="CVr!':G0SUB 50000:PEN 1; 
FAXY=1 

2520 IF K=l THEN 2000 
2530 IF K=2 THEN FTRA=0:GOSUB 3000 
2600 RETURN 
3000 'TRACE AXE X 
3070 MODE 2:INK 0, 13rINK 1,0:0.3 
30S0 LOCATE 15.25:PRINT OX;" ";CHflt(242 
;CHR»I2*3>;' '-M;' ! ";LSI* 
3090 LOCATE 7S-LEN(UXÏ),25tPRINT UXÏ 
3ÏC0 LOCATE 13+(65-LEN(TIÏÏ> !/2,2:PRINT 
TIT* 

3110 PLOT 100,4S.1:DRAWR 520,0 
3120 PLOT 100,*S:DRAWR 0,333 
3130 FOR 1=0XE TÛ MXE;H=5 
3135 Ve=VAL(LEFT$(STftt(IÎ,3)iiIF I=MXE A 
ND MXE>99 AND VG=10 THEH VS=1D0 
31*0 Cï=RIGHT$<STRî(VS),l):IF Ct="5" THE 
N H=10 

3150 IF CS='0" THEN H=15 
3160 PLOT 10O+tI-0XE>*RSXE,48;DPAWR 0, 
3170 IF #»13 OR DXE<20 THEN PLQTR -12- 
<LEN<STRf (VG> 1-2) ,-(H*5 I :TAG:PRINT VG; :T 
AG0FF 
3IB0 NEXT 
*000 'TRACE AXE Y 
*07G LOCATE 2.2:PRINT UYtiPRINT; PRINT MY 
:PRINT:PHINT " ";CHRK254>:PR1NT:PRINT 
YiPRINT 

40bo for 1=1 to len il6yî1:print spci5 

m:d$(lgyï,i,ii 

4090 NEXT 



4100 IF DYE>50 THEN ST=2 ELSE 5T=1 
4110 IF ST=2 AND 0YE/2OINTI0YE/2) THEN 
OYE=0VE-l;DYE=DYE+l 
4120 FCR I=QYE T0 MYE STEP ST:H=5 
4125 VG=UAL(LEFTS(STR$1I),31):IF I=MYE A 
ND J1YE>99 AND VG=10 THEN «6=100 
4130 CÏ=RIGHT$(STR*(VG),li:IF C*=*5' THE 
N H=10 

41*0 IF Ct='0" THEN H=15 
4150 PLOT 100,48+(I-OYE)*RGYE:DRAWR H,0 
4160 IF H=15 OR DYE<20 THEN PLOTR -H-12- 
8*LEN(STRi(VG)),4:TAG:PRINT VG;:TAS0FF 
4170 NEXT 

*180 IF FTRA THEN *200 
4190 CALL &BB06 
4200 RETURN 

500G 'ENTREE DES DONNEES 
5005 WINDOK ttO,l,40,7,25:CLS 
5010 HINDOU #1,1,*0,!,6:CLS HiSOBDEfi 2 
5020 LOCATE «1,2,2:PRINT fi, 'ENTREE DES 
DOMES ( Q POUR QUITTER 1" 
5030 LOCATE il,2,*:PHIN7 ll.'Num' ;SFC( 13 
);"X"iSPC(14};"Y" 
5040 PRINT #l,STRINGi(*0,'_") 
5100 I=UB=t 
5110 LOCATE 1,H:PR1NT USINS *##*» , ;i;:Pfi 
INT SPCU3)::INPUT",D» 
5115 IF UPPER$(Di)='Q' THEN NF=I-l:G0TO 
: 5200 
5120 IF VAL(M1=0 AND DÎO"Û" THEN PSINT 

CHSï(7):GOT0 5110 
5130 PT(I,01=VAL(D$1 
51*0 LOCATE 33,H:INPUT ",Dt 
5150 IF VAL(DS1=0 AND DtO'O' THEN PRINT 

CHRi(7l:G0T0 5140 
5160 PT(I,ll=VAL(Dt) 
517D I=H-1ïH=H+1 

5100 IF I/1S=INT(I/18) THEN CLS:H=1 
5190 GOTO 5110 
5200 HIND0W «0.1,40,1,25:0.5 
5210 BORDER 1:PRINT:PRINT " PATIENCE . 

53CO 'TRI PAR X CROISSANT 

5310 F=0: FOR J= 1 T0 NF 

5320 IF PT(J.0)>=PT(J-1,0) THEN 5360 

5330 FOR R=0 TO l;PT(0,R)=PT(J,R):PTiJ,R 

)=PÎ(J-1,R) 

5340 PTIJ-l,R)=PT<0,R):NEïT:F=l 

5360 NEXT 

5370 IF F*j THEN 5310 

5400 RETURN 

6000 ' FORMLILE 

6010 CLS 

6020 IF FAXY=0 THEN PRINT CHRS(7);"IL FA 

UT D'ABORD DEFINIR LES AXES ":F0fi 

=1 T0 3Û0O:NEXT:RETURN 

6030 PEN 3:L0CATE B,3:PRINT *Le Proçra 

e est ARRETE :':PEN 1 

60*0 LOCATE 2,7:PRINT 'Entre: la Formule 

en ligne 7000. Ex :' 
6050 LOCATE 13,9:PRINT "7000 DEG:Y=SIN(Ï 
J" 
6060 LOCATE 2,13:PRINT "ENTER , puis le 



. du pave mjiaerique'iPRIfiT 

6QB0END 

È500 PRINT: PAINT ' PATIENCE . 

6510 K=i:STI=DX/100:IF INT(STX)=STX THEN 
K=0 

6520 I=0:FOR JN» Tû HX+K*STI STEP SÎX 

6530 I=I+1:Z=Ï 

6540 GOSUB 7000 

6550 PT(I,Q)=Z:PÎ(I,1)=Ï 

6560 IF 1=1 THEN MINy=y : KAXY=Y : SÛTO 65=C 

6570 HINY=h*IN!Y.r1INY) 

6530 MAX¥=MAX(¥,MAÏ¥) 

6590 NEXT:NF=I 
. 6600 CLS 

6610 LOCATE l,5:PflINT "Les calculs de ï 
Jjdetinent ces limites :' 

i>20 PRINT:PRINT ■ ami =*;MINV 
16625 PHINT:PR!NT ' MAÏI = ';rttïY 
J6630 PRINT:PRINÏ 'Vous avie: prévu ds'; 

î'iMY 
|6M0 LOCflTE 4,20:PRINT 'VOULEZ-VOUS BEBE 

FINIR LES AXES ?" 
I665D TEXt=" ON": GOSUB 5DQ00 

6660 IF K=l THEN CLSïFTfiA=0;SOS*JB 2100 

6700 50TO 1000 

6??0 'FORMULE ENTREE A LA MAIN: 
J70C0 V=10/ï 

7010 RETURN 

8000 'TRACE' 

8010 FTRA=::GOSUB 3000 

8100 PLOT IQ[rMPÏU.D)-OX)»RGMa+<PTil. 

1)-0Y)*R6Y,1 

B11D FOR 1=2 TO NF 

B120 DRAW 10Ch-(PTU,0)-0X)*RSX,4BKPT(I, 

1)-0Y)*RGY,1 

B130 f£XT:IF FIftP THEN 82C0 

B150 CALL HB06 
B200 RETURN 

9000 'SAUVEGARDE 

9010 aS:PEN 3:L0CATE 16,3:PRINT 'SAUVEE 

ARCE'îPEN 1 

9020 LOCATE 1 1 , 17: PRINT" ( Q = Retour I 

U 1' 

9030 LOCATE 13, 13: INPUT'NCW: '.FICHÏ 

9035 IF FICHÏ-" THEN FICHÏ=TITS: IF TITJ 

=" TKEN 9000 

9040 FICrH=UPPER*(FICHtl:IF FICH*=' 

EN 9500 

9050 FICHi=L£FT* I FI CHÎ, BH-" .eflA' 

9060 OPEWOUT FICHt 

9D70 WRITE#9,TITJ,NF,0X,MX,L5!(i.UX*,0Y,M 

Y,LSY*,UY* 

9090 URITEt9,FAÏY,DX.RGX,0XE,MXE,EXE.RGX 

E, DY, RSY, OYE, KYt, DYE, RGVE 

9090 FOR 1=1 TO NF:yRITE#9,PT(I,0),PT(ï, 

1):NÈÏT:CL0S£QUT 

9500 RETURN 

100Û0 'CHARGEMENT 

1001D CLS:PEN 3:L0CATE 1É.3:PSINT 'CHARS 

EMENT'iPEN 1 

10020 LOCATE 1 1 , 17: PRINT" ( Q = Retour i 

NU )' 



10030 LOCATE 13,13;INPUT'NOM; ', FICHt 

10035 IF FICriî=" THEN 10000 

10040 FICHt=UPPERt(FICHt):IF FICHS=*Q" T 

HEN 10500 

? 10050 FICHt=lEn*(FICHt,BI+'.GRA' 

; 10060 ÛPENIN FICHt 

10070 INPUTI9,TITt,ff,0X,MX,LSXt,UXt,0Y, 

MY,LGY*,UYt 

10080 INPUT»9.FAXY,DX,PSX,0XE,rlXE,DÏE, 

XE,DY,RGY.0YE,MYE,DYE,R6YE 

10090 FOR 1=1 TO NF:INPUT*9,PTU.0) 1 PTU 

,l!:NEXT:aOSEIN 

10500 RETURN 

11000 'IMPRESSION 

11010 CLS:FO=Q 

11020 LOCATE 5,5:PRINT 'SI L'IMPRIMANTE 

EST PRETE ...' 

11030 LOCATE 10,9:PRINT 'D - LISTE DES 

«NEES" 

11040 LOCATE 10, H:PfiIPfT *G - GRAPHIQUE' 

Î1050 LOCATE 10.13;PRINT 'Q - QUITTER 1 

11060 TEXt='0G0'i50SUE 50000 

11070 ON K GOSUÏ 11200,11400,11600 

11075 IF FQ THEN FO.=0:QOTO 11500 

11090 GOTO 11000 

11200 'LISTE 

11205 PRINT*9,CHRt(271;CKRt(64); 

1121D PRINT tB,SPC((40-LEN(TITt))/2)jT 

t:PRINT 18 

11220 PRINT #8,' Nmera';5PCllÛ];'X';SPC 

(14):'Y' 

11225 PfiINT«8.TAE(16);L6X*;:PRINTtta,TAB( 
31);LGYt 

11230 PRINT»a,TASU6l;UXtiîPRINT*3,TABI3 

l>;UYî:FRINT*8 

11240 FOR 1=1 TO NF 

1125D PRINT 18, USING '«M'ilîîPRINT 

,SPC1B);:PRINT i8,USING '«KStt.ttili'iPri 

1,0); 

11260 PRINT ta,SPC(5);:PRINT #8,USIN5 'I 

H»#*.t»#'iPTU,l) 

11270 NEXTsFÛR 1=1 TO 3:PR3NT #B:NEXT 

11300 RETURN 

11400 'HARD COPY 

11410 FIi1P=l:S0SUB SOOO 

11420 GOSUB 530GO:FIMP=0:PRINT (t8,CHR*i: 

7)iCHRt(64); 

11430 MODE lîINK 0,1:INK 1,24 

U500 RETURN 

11600 'RETOUR MENU 

11610 FQ=1 

11620 RETURN 

12000 ' QUITTER 

. 12010 as 

12020 END 

15000 'INSTRUCTIONS 

15010 CLS 

15020 FRINT ' Ce Logiciel dessine autûM 
tiguenent Itsaxes 11 avec leurs graïuati 
□ns , suivantles limites que vous au 
» fixées, ' 
15030 PRINT " Les Données peuvent et 
ntrees en de-sordre,il les classera i 



issant.cubien par une foraule mathe- 
ue. Le trace de la courbe est 

ultra rapide." 

15040 PRINT ' On peut Upriner le table, 
des dormeesou le HARD COPY du graphiqi 
Suivre l'ordre logique 
iivant:':PRINT 

15050 PRINT '[-Définir les caracteristiq 
des Axes.2-Entrer les données ou h 

Formule, 3-Trace du graphe, ':PRINT 

15060 PRINT ■ On peut sauvegarder un gr 

aqhe:Le NOM de ce fichier de donnée! 

ut être le TITRE du graphe si vous 

màez par la touche ENTER a la quest 

NOM.' 

15D70 PRINT ■ Si vdus «nez de recharger 
un fichier- graphe,passez directement a 
l'option T.':PRINT:PRINT ' PRE 

SSE7 UNE TOUCHE,' 

15060 CALL &B806 

15090 RETURN 

50000 'REPONSE A UN MENU 

50010 LT=LEN(TEXt>:Rî='■ 

50020 LOCATE 15-LT, 24 :PR1NT 'Réponse l'j 
50030 FOR 1*1 TO LT-1 

50040 PRINT M3DJ(TEXt,l,l);',';:NEXT 
50O5D PRINT RIGHTtlTEXt,l);'l , ;CHRt(1541 

CHRt(243):CHRt(207) 
50060 TEXt=UPPERt(TEXt) 
50070 WHILE Rt=":Rt=INKEYt:lJEND 
50080 fit=UPPERt(Rt):K=INSTR!TEXt.Rt) 
50090 IF K=0 THEN Rt^'iPRINT CHR* 
OTO 50070 
50100 RETURN 

5B000 'HARD COPY par TEST / EPSON 
58010 PRINT SB,CHRt(27);CHRÏ(64); 
58020 PRINT #8.CHRt(27l;'A'iCHRt(7 
5B030 PRINT IB,CHRtl27) 'M 1 ; 
5BD50 WIDTH 137 
5B060 FOR 1=406 TO 14 STEP -14 
58070 PRINT #8,CHRt(27)"L";CHRt(127);CHR 
i(2); 

FOR J=0 TO 63fl 
58090 T=TEST(J,I)*64+TE5T(J,i-2]«32HEST 
■4)*16*-TEST(J, r-6H9*TEST(,T,I-a)»4+T 
EST ( J, I -1 ) *2+ TEST (J, 1-121 
5B1CO PRINT #B,CHR*(T);:fCXT 
5BU0 PRINT t8,CHRt(13):NEXT 
58120 PRINT tB,CrlRtf27)iCHRtl64>; 
5B130 RETURN 
65535 ' FIN DE LISTING - 




E.a.fl.T. Software 

55. rue Tondu 33000 Bordeaux Tel (56) 96 35.23 Poste 31 
Importateur Distributeur des programmes logiciels de la Sté PRIDE-UTILITES 



POUR VOTRE 464-664-6128 

SPECIAL NOËL 



pour l'achat de 2 programmes en cadeau 
"une horloge digitale sur cassette" 

Idans la limite des stocks disponibles) 



RSX SYCLONE 2 



130 F 165 F 

CASSETTE DISQUETTE 



• Sauvegarder 
mie de temps d 



mble RSX bande à bande qui apporte ne 
te NOMBREUSES POSSIBILITES pour votre CPC 464. 
-"'- : 3ux logiciels pour un chargement avec une 
• Choix de sept vitesses de sauvegarde 1 
4 (XX) bauds • Pas besoin de SYCLONE pour le rechargement à . 
:ene • Lecteur global d'en-tête • Commandes disponibles à pô 
BASIC • Chargement et impression de programmes BASIC sauveg; 



TRANSMAT 

Permet le transfert facile sur disques d 
système à disques AMSTRAD DDI-1. 
• Modes de fonctionnement automatiques ou non-automatiques • Lecteur 
global d'en-tête de disque • Adjonction éventuelle de réadressage • Pro- 
grammes faciles d'effacement ou de changement de nom 
BOURSE D'INFORMATIONS TRANSMAT 80 F 

Informations complémentaires pour passer des programmes difficiles 
Mise à jour régulière des 4 premières éditii 




PRINTER PAC 1 



compatibles 



in de système résidante qui ajoute £ 

.re CPC 464/664. Un ensemble â deux progra 
mante AMSTRAD DMP1 (AMDUMPI < 
ESPSON IEPDUMPL 
* VIDAGE ECRAN dans tous les modes. Deux formats avec EPDUMP • 
Vidage texte dans tous les modes ■ Trois nouveaux types de caractères 
le DMPt • Préciser les encres de fond lia version 664 n'est pas dispo 
ii cassette). 

205 F 

SYSTEME X 

e SYSTEME X est un programme (RSX) 
dant qui apporte plus de 30 commandes 
TRAD CPC 464 ou CPC 664. Etant 
il ne faut qu'environ 3k octets de la RAM, ce qui i 

.'-Viable de programme. Le SYSTEME X utilise ___ 
neures. identifées par la barre verticale "I" qui les précède. 



Disponible à Vincennes chez ORDIVIDUEL. Paris chez VIDEO SHOP 
Bordeaux chez MICRO DIFFUSION. Le Havre, Caen Rouen et Vimou- 
liers chez LOISIR INFORMATIQUE. Rouen chez AMIR, 16160 Gond 
Pontouvre chez MICROTOP, 03500 St Pourcain S/Sioule chez Ets 
LEMAITRE, Angers chez TEMPS X, Pau chez BASE 4, Troyes chez 
MICROPOLIS, 02100 St Quentin chez Ets COGNETS Nice chez ARAL 
matiqus, Bordeaux chez PHILIPPE ELECTRONIQUE, 




BON DE COMMANDE 



COMMENT COMMANDER ; ( 



ihcation de sauvegarde bande à bande. 
! charge pratiquement de tout. Les per 
îment du TOMCAT restent inégalées 



rï30n65F 

CASSETTE DISQUETTE 1 



ZEDIS 

Un désassembleur et programme d'édition de code à la fois global et convi- 
vial. Indispensable pour le néophyte tout comme pour l'expert. 
• Démontage complet Z80 • Insertion de point d'interruption et contrôle de 
registre ■ Entrée sous forme h exa dé ci ma le /caractère s ■ Recherche rapide 
forme hexadécimale/caractères • Instructions complètes pour le démon- 



tagedes ROM's • Vis 


on • Sortie ver 


n^primantP " Pré " char9emenl du 




130 F 165 F 

CASSETTE DISQUETTE 


SCRIPTOR 





un élément essentiel pour les propriétaires d'imprimante DMP-1. Six poli- 
ces de caractères définissables. Laissez faire votre DMP-1 sans extension 
• Caractère à jambage inférieur • Futuriste • Italiques • Compatible avec 
AMSWORD • Ecriture liée • Caractères gros et gras • Programme de défi 



is progra 



LE PROGICIEL UTILITAIRE SUR DISQUE 

QUE VOUS ATTENDEZ r ^«^ — I 

ODDJOB I200 F| 

Un utilitaire complet sur disqi. 
que vous attendiez, le tout groi 
tera. 39 k d'espace-disque utilisés. 
Voyez plutôt les possibilités : 

• Un éditeur complet, qui vous permet d'examiner le menu du dis- 
que, et d'en modifier aisément le contenu^ ^_^ 

• De récupérer les programmes effacés. I M OLIVE AU 

• De cacher des programmes du menu, l^*^ 



contenu d .. 

• Faire un plar 



; fiche 






n ASCII 



• Empêcher l'effacement involontaire des programmes. 

• Un duplicateur de disque intelligent qui peut copier le: 
endommagés/non standard sur un drive simple ou dou 
■ Formatter deux fois plus vite sur l'un ou l'autre drive 

• Transférer les programmes /fichiers dont vous vous 
moins sur cassette pour récupérer votre espace disque 

• Augmenter la vitesse de votre drive jusqu'à 20 %, 

• Charger et lister les programmes en BASIC 

• Toutes les instructions sont fournies sur disque sur 





C 


n 




TOMCAT 








DOUF TRANSMAT 








SCRIPTOR 








JRE ZEDIS 








RSX SYCLONE 2 








SYSTEME X 








r |( . PRINTER PAC 1 








ODD JOB 







De nombreuses personnes ne semblent pas 

avoir bien compris la protection des fichiers 

sous CPM + . Voici quelques explications qui, 

je l'espère, pourront les aider. 

— Mettre en fonction la protection par SET 

[PROTECT = ON]. 

Notons que l'inverse est : SET (PROTECT = 

OFF|. 

Protection d'un fichier 

Pour protéger un fichier en lecture, la 
commanda sera : Nomlichier.ext IPASS- 
WORD = nom password] avec ext : com, 

Pour l'exécuter, nous écrirons : 
Norrvfichier.ext;nom password. 
Attention aux fichiers qui demandent des 
informations complémentaires. Ex.: OIR 
(FULU. Il sera appelé par DIR;nom password 
EFULL1- Le password se met donc toujours 
après le nom du fichier ou de s 



Pour supprimer le mot de passe, il suffira 

SET Nom fichier. ext [PASS-WORD = ] ou 
SET Nom fichier. ext [PASS-WORD = NONE]. 

Protection de 
tout las fichiers 

Par set.".(PASSWORD = Nompassword]. 
Attention à cette commande, car tous les 
fichiers du disque seront protégés, y compris 
SET. 

Le lecteur s'assurera qu'il sait travailler avec 
ce fichier, protection en service. 
Il est possible de protéger ces fichiers en écri- 
ture par : 

SET. •. [PROTECT = WRITE] ou SET Nom- 
fichier.EXTIPROTECT= WRITE! 
Il n'est cependant pas possible d'avoir les 
deux. Les fichiers seront protégés soit en lec- 
ture [READI ou en écriture [WRITE]. La sup- 
pression sera : 

SET Nomfichier.EXTlPROTECT =] ou 
SET Nomfichier.EXTlPROTECT = NONE|. 
Pour plus de sécurité, il est possible aussi de 
protéger, par un mot de passe, l'accès de 
l'ensemble du catalogue du disque. Toutes 
les modifications seront soumises à la 
demande du password : 
SET[PASSWORD = nom password] 

SET [PASSWOROH. 

Enfin, il est possible de rendre invisible un 
fichier au catalogue par SET Nom. ext [sys] ; 
pour le retrouver, faire SET Nomfichier.ext 
[DIRI, ou encore de l'affecter en lecture seu- 
lement par SET Nomfichier.EXTIRO]. 
La situation inverse sera : SET Nom- 
fichier.EXTIRWI. 



Notons que ces dernières commandes seront 
possibles en CPM2.2 par l'utilitaire STAT. 
Bonne Protection. 



£sSTy£^s] 



Vous avez sans doute regretté la désagréa- 
ble absence de "lutins" (ou "sprites' en 
anglais) dans le Basic de votre AMSTRAD. 
Aussi, je vous propose un moyen simple et 
rapide d'y remédier. 

Vous connaissez le moyen de déplacer un 
caractère ASCII, redéfini ou non, en utilisant 
des coordonnées graphiques (sinon, consul- 



i'jt ' 3 



n I fin 



TAGI. Cequt 

le moyen de le superposer à n'importe que 

autre dessin sans masquer tout ce qui s 

trouve sous la matrice du caractère en quet 

tion. Il suffit d'inclure, avant l'affichage d 

caractère, la ligne PRINT CHR$I22ICHR$(1 

pour remédier a cela. 

PRINT CHR$(22,CHR$(0) provoquera I 

retour à l'état normal. 



LES LOGICIELS PROFESSIONNELS DE 

pm informatique 

Pour votre CPC 6128 et le PCW 8256 



RéfPM83AFICHETCALC 

Gestion de fichiers - Vous créez vos fiehiei 

exploitez - Classement par code - Séquer 
Éditions sélectives (Clients, stocks, paie, tari 
étiquettes, adresses - de prix). 



il pm 25A COMPTA PM 

10 journaux, 5000 comptes 

2000 écritures ovec I disquette 

Remise à zéro en cours d'année possible i 



i pm 43A DEVIS FAC 



ie vente. Rédaction el éditio 
e de ventes. 

nC 1 050 franci 



Disquettes de démonstralion + documentation = 365 fra 
troncs déductibles lors de l'achat de la version complète. 
Envoyez votre adresse avec le chèque en précisant : 
. La référence PM 

- La version [démonstration ou complète) 

■ Le type de votre CPC (6128 ou PCW 8256) 

- I ou 2 lecteurs de disquettes 

microtex 

22, place de la 'èo^bl que - 59170 CROIX 

tél. 20.98.66.86 



MICRO-C S.A.R.L 

I, Av. du Gai. de Gaulle 3. bd. de Beaumont 

35170 BRUZ OU 3SOOO RENNES 

Tél.: 99.31.76.41 

Revendeur officiel AMSTRAD 

CPC 464 vert 2640 F 

CPC 464 couleur 3900 F 

CPC 6 1 20 vert 4340 F 

CPC 61 28 couleur 5740 F 

PCW 82S6 6800 F 

Imprimante DMP 2000 2240 F 

DDM 1940 F 

FD- 1 |2' lecteur] 1 540 F 

Câble magnéto 55 F 

Disquette 3" 35 F 

Cassette CI5 7,50 F 

Câble péritel pour télé couleur 160 F 

Logiciel; scolaires ou éducatifs K7 : 100 F D : 130 F 

— FONCTIONS Icourbes et intégrales) 

— SUITES RECURRENTES K7 ; 100 F D : T30 F 

fie pack de deux sur disquette : 200 F) 

— MICROGEO K7 : 140 F □ : 250 F 

NOUVEAU 

"CHERRY PAINT" Version 1 

à partir du 20 décembre. Prix de lai 

|Réservez dès maintenant I) 

-50 % pour les acheteurs d'un CPC 664 ou 6126. 

— Sélection de 40 trames. 

— Crayon, pinceau, gomme, etc., 

— Déplacement, redéfinition de caractères, 

— Hardcopy, etc.... 

■OO lof Iclcls «t Jeux 

Catalogue sur demande contre î 1 F en timbres, rembourse sur 

Pour commande, joindre chèque ou mandat ( + 30 F de port]. 



280 F TTC 



• IIMITIATIOIM 
A L'ASSEMBLEUR 



Denis BOURQUIN 



Auparavant, nous introduirons 
tout de suite une nouvelle ins- 
truction assembleur qui nous sera 
très utile par la suite. Vous avez 
déjà vu, dans le manuel de votre 
AMSTRAD, l'instruction Basic 
équivalente : CALL. 
Cette instruction permet d'appe- 
ler un sous-programme écrit en 
langage machine. En assembleur, 
nous trouvons la même instruc- 
tion qui permet d'appeler un 
sous-programme, sa syntaxe 
est : CALL adresse du sous- 
programme. 

Mats, qu'est-ce qu'un sous- 
programme ? Nous dirons qu'un 
sous-programme est un ensem- 
ble d'instructions indépendant 
qui se termine par une instruction 
RETURN en Basic et RET en 
Assembleur. En général, on crée 
un sous-programme parce que 
son bloc d'instructions doit être 
utilisé plusieurs fois au cours d'un 
même programme, ainsi il ne sera 
pas nécessaire de le réécrire cha- 
que fois, il suffira d'écrire CALL 
sous-programme. 
L'instruction CALL provoque un 
déroutement du microprocesseur 
à l'adresse codée dans les deux 
octets suivant le code opération 
de CALL. 

Le microprocesseur exécute la 
suite d'instructions trouvée et 
retourne au programme principal 
contenant l'instruction CALL qui 
l'avait dérouté, quand il rencon- 
tre une instruction RETURN. 
Sur une instruction CALL, le Z80 
sauvegarde dans .une zone 
mémoire que l'on appelle la pile, 
l'adresse de l'instruction suivant 
le CALL. Ainsi, lorsqu'il rencon- 



Après avoir passé en revue, dans le numéro pré- 
cédent, les instructions de chargement, nous 
allons les mettre en application avec quelques 
exercices très simples» 



tre l'instruction RETURN, il vient 
rechercher l'adresse de retour 
dans la pile: Le microprocesseur 
gère la pile directement, mais 
nous reviendrons dans un pro- 
chain numéro sur cette notion de 
pile. Il faut tout de même savoir 
que cette pile a un pointeur qui 
est le registre SP et qu'il est donc 
nécessaire, dans un programme 
utilisant des instructions CALL, 
d'initialiser SP afin d'indiquer au 
Z80 où se trouve cette pile. SP 
doit prendre la valeur du haut de 
cette pile et elle se trouve dans 
une zone de la RAM disponible et 
inutilisée. Pour la dimensionner, 
il suffit de regarder le nombre 
maximum de sauvegardes faites 
à un instant donné dans cette 
pile. Prenons un exemple : il reste 
de la RAM disponible entre les 
adresses 8000H et A000H. 
Notre programme fera au maxi- 
mum trois CALL imbriqués, c'est- 
à-dire que, dans le premier sous- 
programme, on trouvera un CALL 
au deuxième sous-programme 
qui appelera aussi le troisième. Il 
sera donc nécessaire de disposer 
de 6 octets dans la pile. Au début 
de notre programme, nous pour- 
rons initialiser le registre SP à une 
valeur comprise entre 8006H et 
A000H. L'instruction sera : LD 
SP,8006H. 

Nous venons de parler de l'ins- 
truction CALL car l'AMSTRAD 
possède un grand nombre de 
sous-programmes en ROM qui 
seront très utiles lorsqu'on tra- 
vaille en langage machine. En 
effet, il n'est pas nécessaire de 
réécrire toutes les routines 
d'entrée-sortie de l'AMSTRAD. 



Mais revenons à nos instructions 
de transfert vues dans le numéro 
précédent. Nous commencerons 
par visualiser leurs effets en 
jouant avec la mémoire d'écran. 
Nous ne reparlerons pas de la 
conception de cette mémoire, 
mais nous vous conseillons de 
relire l'article du numéro 1 de 
CPC, dans lequel elle avait été 
analysée. Rappelons simplement 
que l'adresse du début de la 
mémoire d'écran est C000H. 
L'AMSTRAD possède trois 
modes de visualisation. En mode 
2, qui est le mode haute résolu- 
tion, chaque point de l'écran est 
codé dans la mémoire d'écran 
sous forme d'un bit. Nous allons 
donc écrire directement dans 
cette mémoire d'écran. 
Avant d'écrire dans la mémoire 
d'écran, il va être nécessaire de 
faire passer l'AMSTRAD en mode 
2 et de faire un effacement 
d'écran. 

Le choix du mode se fait par un 
CALL à une routine de la ROM qui 
a son point d'entrée en BCOEH, 
mais avant d'effectuer le CALL, 
il est nécessaire de charger le 
registre A avec la valeur corres- 
pondant au mode désiré (0, 1 , 2}. 
Dans cet exemple, nous allons 
mettre tous les bits du quaran- 
tième octet de la mémoire 
d'écran à 1 , c'est-à-dire que nous 
allons écrire, dans la case 
mémoire d'adresse C028H, la 
valeur FFH, soit 255 en décimal. 
Le tableau 1 donne la représen- 
tation de 255 dans les trois bases 
qui nous intéressent le plus. 
En binaire (base 2), chaque élé- 
ment de la représentation est le 



\ 



128 


64 


32 


16 


8 


4 


2 


1 


2 7 


2 S 


T 


2* 


2 î 


2 2 


2 1 


2" 


Binaire 1 


1 


1 


1 


1 


1 


1 


1 


Hexadéci. 




F 




F 






Décimai 




2 


5 


5 





facteur multiplicatif d'une puis- 
sance de 2, et les chiffres et 1 
sont les seuls utilisés. 

En hexadécimal, il faut 16 
symboles pour représenter un 
chiffre d'où la convention d'utili- 
ser les chiffres décimaux (0 à 9) 
et les lettres A, B, C, D, E, qui 
auront respectivement les valeurs 
décimales de 1 0, 1 1 , 1 2, 1 3, 1 4, 
15. 

Vous voyez maintenant à quoi 
correspond 255 en binaire ou en 
hexadécimal, nous pouvons donc 
l'envoyer à la mémoire écran. 
En se reportant au numéro précé- 
dent de CPC, il apparaît qu'il n'est 
pas possible d'écrire directement 
une valeur numérique dans une 
case mémoire. Nous allons devoir 
mettre d'abord cette valeur dans 
le registre A, puis transférer le 
contenu du registre A dans la 
case mémoire qui nous intéresse. 
L'exemple 1 est écrit en respec- 



tant la syntaxe de l'assembleur 
ZEN. Cet exemple utilise les 
directives assembleur analysées 
dans un numéro précédent. 



Nous aurions pu écrire aussi le 
programme de l'exemple 2 qui 
effectue le même détail. 



Un rappel sur l'utilisation d'un 
Assembleur ; il faut tout d'abord, 
pour entrer le source de notre 
programme, se mettre en mode 
édition, ce qui s'obtient avec ZEN 
en frappant la lettre E. Pour sor- 
tir de l'éditeur, taper un "." en 
début de ligne. Notez qu'il ne faut 
pas oublier à la fin du source la 
directive END. Afin de retourner 
à l'Assembleur, notre programme 
se termine par un saut au début 
de ZEN, par le mnémonique JP 
(jump). Pour assembler ce petit 
programme, taper la touche A et 





ORG 


80O0H 






LOAD 


8000H 




SCRSETMOD: 


EQU 


OBCOEH 




ZEN: 


EQU 


4000H 






LD 


A,2 






CALL 


SCRESETMOD 






LD 


A.OFFH 






LD 


(OC028HI.A 






JP 


ZEN 






END 




Exemple 1 





ORG 


80OH 






LOAD 


800H 




ZEN: 


EQU 


4000H 




MEMEC: 


EQU 


0C000H 




SCRSET: 


EQU 


OBCOEH 






LD 


A,2 






CALL 


SCRSET 






LD 


A.OFFH 






LD 


(MEMEC + 40),A 






JP 


ZEN 






END 




Exemple 2 



choisissez l'option V. Après 
assemblage, vous l'exécuterez 
avec la commande G8000H. 
Vous voyez alors apparaître un 
trait au milieu de la première ligne 
de l'écran. Nous vous laissons le 
soin de modifier l'adresse où 
vous transférez le registre A, ce 
qui vous permettra de mettre en 
évidence la structure de la 
mémoire écran. 

Nous allons passer à un autre 
exercice, toujours en utilisant les 
facilités d'utilisation des routines 
de la ROM de l'AMSTRAD. Cet 
exercice consistera en l'envoi 
d'un message sur l'écran de 
l'AMSTRAD. Mais, avant, 
envoyons déjà un caractère à 
l'écran, après avoir effacé ce der- 
nier. L'effacement de l'écran se 
fera par l'appel à la routine d'ef- 
facement de la fenêtre texte 
active dont le point d'entrée est 
0BB6CH. Notons, au passage, 
que les utilisateurs de CPC 464 
trouveront les principaux points 
d'entrée de la ROM dans le 
manuel SOFT 1 58 disponible 
chez AMSTRAD. 
Pour envoyer un caractère à 
l'écran, celui-ci doit être dans le 
registre A et on appelle la routine 
TXT OUTPUT dont le point d'en- 
trée est 0BB5AH. Dans notre pro- 
gramme, nous initialiserons le 
pointeur de pile (registre SP). Voir 
exemple 3. 

Compliquons l'exercice et 
envoyons un message sur 
l'écran. Cet envoi se fera par l'uti- 



^/^icropoli/ 



DERNIERE MINUTE 

5 % sur toute la 
boutique à tous les 
Nases de la micro. 

MICROPOUS 

(encore eux^ 

53, av. Philippe Auguste 

75011 PARIS 

Tél.: 43.56.31.10. 



lisation d'une boucle qui appellera 
à chaque passage la routine TXT 
OUT. Dans le registre A, nous 
mettrons successivement les dif- 
férents caractères de notre mes- 
sage. Nous pointerons ce mes- 
sage avec ia paire de registres 
HL. Le registre B sera le compteur 
de boucle et contiendra le nom- 
bre de caractères à afficher. Nous 
utilisons, dans l'exemple 4, deux 
nouvelles instructions que nous 
verrons le mois prochain, lorsque 
nous analyserons les instructions 
arithmétiques. L'instruction INC 
HL ajoute 1 au contenu de HL. 
L'instruction DJNZ SORT, sous- 
trait 1 au contenu du registre B, 
et si le contenu de B est différent 
de 0, on retourne à l'étiquette 
SORT ; si le contenu de B est égal 
à 0, on continue en séquence. 
Nous nous retrouverons le mois 
prochain pour l'analyse de nou- 
velles instructions : les instruc- 
tions arithmétiques avec des 
exemples utilisant de nouvelles 
routines de la ROM, et lorsque 
nous aurons vu suffisamment 
d'instructions du Z80, nous 
commencerons un exercice plus 
complexe. 





ORG 


8000H 






LOAD 


8000H 




TXTOUT: 


EQU 


0BB5AH 




TXTCLEAR : 


EQU 


0BB6CH 




ZEN: 


EQU 


4000H 






LD 


SP.9000H 






CALL 


TXTCLEAR 






LD 


A,'C 






CALL 


TXTOUT 






JP 


ZEN 






END 




Exemple 3 





ORG 


8000H 




LOAD 


8000H 


TXTOUT: 


EQU 


0BB5AH 


TXTCLEAR: 


EQU 


0BB6CH 


ZEN: 


EQU 


4000H 




LD 


SP.9000H 




CALL 


TXTCLEAR 




LD 


HL.MESSAGE 




LD 


B,9 


SORT: 


LD 


A,(HL) 




CALL 


TXTOUT 




INC 


HL 




DJNZ 


SORT 




JP 


ZEN 


MESSAGE: 


DB 
END 


'BONJOUR'.ODH.OAH 

Exemple 4 



LE COIN 

BIDOUILLE 



■ 



Denis BOURQUIN 



€$*% 



>us vous donnons ce mois-ci les dessins du cir- 
uit imprimé de notre interface série. Rappe- 
lons que cette interface se monte sur notre fond 
de panier et offre deux sorties dont une sur connec- 
teur standard RS232. Les signaux de sortie présents 
sur le connecteur RS232 ont été amplifiés par des 
émetteurs de ligne et ceux des entrées arrivent sur 
des récepteurs de ligne. 



Comme pour certaines applica- 
tions il n'est pas nécessaire 
d'avoir les signaux avec des 
niveaux TTL, il est prévu un autre 
connecteur de sortie qui pourra 
être, par exemple, un connecteur 
DIN 5 broches. Les signaux TTL 
sortent sur collecteur ouvert et 
les entrées sont sur des résistan- 
ces de 1 kîï. 

Une première application de notre 
interface peut être une liaison 
avec un terminal MINITEL via sa 
prise périnformatique. Le bro- 
chage de cette prise est le sui- 
vant ; les numéros correspondent 
à ceux indiqués sur la prise DIN 
5 broches. 

1 — RX : réception des données 
par le Minitel. 

2 — Masse. 

3 — TX : émission des données 
par le Minitel. 

4 — PT : périphérique prêt à tra- 
vailler. 

5 - TP : terminal prêt (Minitel). 



Programma permettant d'acquérir un écran Minitel et de le sau- 
vegarder dans un fichier Minrtel.dat. 
La liaison est interrompue par l'appui sur ESC, 
On dimensionne le tableau A à une taille supérieure au volume 
des données à acquérir. 



90 ' 

100 ON BREAK G03UB 230 

110 i=l 

120 DEFINT a:DIM a<1024> 

130 IF (INPl8tFBE5) AND 2)=2 THEN ali)=IN 

P (&FBE4) : i = i +1 

140 GOTO 130 

150 OPENOUT "minitel .dat" 

160 FOR j=l TO i 

170 PRINT tt9,a< j ) 

180 NEXT j 

190 CLOSEOUT 

200 STOP 

210 DUT &FBE3,kB6:0UT &FBE2,52:OUT &FBE2 

,o 

220 OUT LFBE5,8<7A:OUT È^BES,^? 

230 END 

240 ON BREAK STOP 

250 GOTO 150 






( 


-^ 


Ce programme envole au Minitel 


un fichier acquis précédem- l 


2 


20 ' ment et le stocke sur dièque sou 


le nom Minitel.dat. - 


m A 


30 ' 




%*T 


40 ' 




^■J 


50 DEFINT a:DIM atl024) 






60 i = l 






70 OPENIN "minitel.dat" 






80 INPUT tt9,a<i) 






90 IF EOF THEN GOTO 110 






100 i=i+l:G0TO 70 






1 10 FOR j = l TO i 






120 IF (INP(t:FBE5) AND 1) 


-1 THEN OUT 8.FB 




E4,a( j ) 






130 NEXT j 






140 CLOSEIN 







60 CLSIDEFJNT alDIM a<1024) 
70 OPENIN "minitel.dat" 



90 INPUT tt9,a(i> 

100 IF EOF THEN GOTO 120 




tl ne sera pas nécessaire de relier 
les broches PT et TP à notre mon- 
tage. Nous ne relierons donc que 
ia sortie RX de notre montage 
avec l'entrée RX du Minitel, ta 
sortie TX du Minitel avec l'entrée 
TX de notre montage, ainsi que 
les masses. 

Pour permettre au 8251 de fonc- 
tionner normale ment , nous relie- 
rons la sortie RTS du 8251 
à l'entrée CTS du 8251 dans le 
cas où nous n'utilisons pas de 
741 88 et 741 89 ; en effet, dans 
cet exemple d'utilisation, il n'est 
pas nécessaire de les monter. 
Dans le cas contraire, nou s reli e- 
rons directement la sortie RTS à 
i'entrée CTS sur ie connecteur 
RS232. Le 8251 ne t rans mettra 
des données qui si CTS est à 
zéro. Ne pas oublier d'alimenter 
le fond de panier en + 12 V et 
-12 V en cas d'utilisation du 
74188. 

Le format des signaux de la liai- 
son série avec le Minitel est repré- 
senté ci-dessous. 



- MINI TTTpT T 

* -~~» | STOP 

START données parité 

La liaison est du type asynchrone 
avec 7 bits de données, 1 bit de 
parité paire et 1 bit de stop. 
La vitesse des échanges est, à fa 
mise sous tension, de 1200 
bauds dans les deux sens. Cette 
vitesse peut être changée et choi- 
sie à : 
300 - 300 
75 - 1200 
1200 - 75 
75 - 75. 

Pour nos essais, nous laisserons 
la vitesse de 1 200 bauds, mais 
regardons comment programmer 
notre interface. 

Tout d'abord, programmons ie 
8251, en nous reportant au pré- 
cédent numéro de CPC. Nous 
voyons qu'il faut d'abord envoyer 
une commande de sélection de 
mode, puis une instruction de 
commande. 

Pour l'instruction de sélection de 
mode, nous choisissons : 

— 1 bit de stop, 

— génération de parité paire, 

— parité valide. 



110 


i=i+l:GOTO 90 




120 


FOR j=l TO i 




130 


IF afj)=kE THEN GOTO 250 




140 


IF a(j)=klF THEN GOTD 190 




150 


IF a(j)=&lB THEN j=j+i:GOT0 180 




160 


IF alj)=E 1 F THEN -fq=0:GOTO 180 




170 


IF -fg = THEN PRINT CHRS ( a ! j ) ) î 




ISO 


NEXT j 




190 


i = j + i 




200 


IF a(j)>63 THEN y"/. = a < j > -63 ELSE 


y%=( 


a( j 


-4S)*10 




210 


J=J + 1 




220 


IF a(j)>63 THEN x7.= a<j)-63 ELSE 


yV„=y 


%+■ (a( j ) -48) 




230 


LOCATE x%,y% 




240 


GOTO 180 




250 


+ 9=1 




260 


j=j +1 




270 


IF a!j)=taF THEN -fq=0:GOT0 190 




280 


IF s (j)=p,F THEN -fq=0:G0T0 180 




290 


GOTO 260 





— longueur des caractères : 7 
bits, 

— facteur multiplicatif de la 
vitesse de transmission : 16X 
soit la valeur binaire 

01 1 1 101 OB ou en hexadécimal : 

7AH. 

Pour le mot de commande, nous 

en voyo ns : 

— RTS : forcé à zéro. 



— remise à zéro de toutes les 
erreurs, 

— valid ation de la réception, 

— DTR forcé à zéro, 

— validation de la réception, 
soit la valeur binaire 001 1 01 1 1 B 
ou 37H en hexadécimal. 

Une erreur de numérotation des 
figures s'est glissée dans le 
numéro précédent ; la figure 3 est 



en réalité la figure 4 et inverse- 
ment. Le mot de commande est 
composé de EH, IR, RTS, ER, 
SBRK, DTR, TXEN. 
La séquence à effectuer en Basic 
pour cette programmation du 
8251 est la suivante : 

OUT &FBE5.&7A: 
OUT &FBE5,&36 

Il nous reste à initialiser le 8253 
qui devra fournir l'horloge de 
transmission au 8251. La fré- 
quence de cette horloge doit être 
1 200 x 1 6 = 1 9200 Hz, car nous 
avons choisi un facteur multipli- 
catif de 1 6. 

Nous utilisons le timer 2 du 8253 
que nous programmerons pour 
qu'il génère une horloge avec des 
signaux carrés. Nous ie mettrons 
donc en mode 3, ensuite nous lui 
fournirons la valeur 16 bits du 
facteur de division, en deux fois, 
en lui envoyant d'abord tes poids 
faibles, puis les poids forts. L'hor- 
loge appliquée au timer 2 a une 
fréquence de 1 MHz ; sa sortie 
doit être à 1 9200 Hz et donc le 
facteur de division sera de : 
1000 000/19200=52,08. Ce 
facteur devant être un nombre 
entier, nous chargerons donc 52, 
ce qui nous donnera une vitesse 



IMPLANTATION 



JT 



Ht 



HK 




u," ULasrr ■ 




de 1 201 bauds, ce qui n'est pas 
préjudiciable au bon fonctionne- 
ment de la liaison. 
La séquence en Basic pour initia- 
liser le 8253 sera par consé- 
quent : 

OUT &FBE3,&B6: 

OUT &FBE2,52:OUT &FBE2,0 

En résumé, la valeur de division 
à envoyer au timer est égale à : 



1 000 000/(V*F) où V est la 
vitesse de transmission, F le fac- 
teur multiplicatif commandé au 
8251 et 1 000 000 la fréquence 
de l'horloge appliquée au timer. 
Voici donc maintenant un pro- 
gramme permettant d'acquérir 
des écrans du Minitel en parallèle 
d'une liaison, puis de les stocker 
sur disque ou cassette. Le pro- 
gramme suivant lit l'écran stocké 



sur disquette ou cassette et le 
retourne au Minitel. Le troisième 
programme est un exemple d'af- 
fichage du texte, d'un écran Mini- 
tel sur AMSTRAD ; ce pro- 
gramme ne traite pas le graphi- 
que, ni tous les codes Minitel, 
mais respecte malgré tout le posi- 
tionnement absolu des caractè- 






JftQOT et LEQR 



POUR PROGRAMMER VOS AUTOMATISMES 



c de l'AMSTRAD est très adapté 

digitales, par sa vitesse d'eiécu 

ions INP. OUT el WAIT Notre Sec Été prisse 

mlrèes-sortles analogiques 




POUR L'INSTRUMENTATION SCIENTIFIQUE 



, oc ré le vous propose clans le domaine 
es-so'ties. de commande et de commun: 
ralléle et de pilotage d'appareils de MM 
te HPIB géran!32 appareils f adresses su 



Périphériques pour 



DISTRIBUTEURS 

LOISITECH 83, av. Faidherbe 93106 Monlreuil (1) 48 42 14 16 
ORDI VIDUEL 20 rue de Monlreuil 94300 Vincennes (1 ) 43 28 22 06 
MICRO BOUTIQUE 37 passage de l'Arque 69000 Lyon 78 37 46 17 
Louis LEREY Barthefere 81700 Puylaurens 63 75 02 35 



appicioTd e des OT cl : 

- J1C0I 1 ifOM :■■ . j 

f V.' \ .r- 1—11,'- . y:', JO.Ji* i,-' •■: . TCM •.!: s: i ; '• M 

léme standard de faille ilOO X 170 mm) loutei ces crie, i Mêgranl u i 
tacfc rond de panier Duttense. relie par un came souple a votre clavier tile 
ce caole el être livrées en Boîtier plastique. Lesca 



r-: 




AMSTRAD ET COMMUNICATION 



KT.S' : 



le 7S47 96 17 à LYON. 




Aï 



E 104: Carie rtrieHS 232. 
Celle interface est entié 
vitesses de 75 a t920O 

S5S?S , 5? " 9 " cs 9e " e ' 



RSaSpouruiieirnoriniinleséileBnlieuetplacBdeiasn.neCENTnCNICSet 

■■ ' ■ ■■: " -.- ■ : ■'■'■':'- ■: :"EE - - . — . - 
Ce logiciel «il vendu sous torme d'un KIT SEME avec la cane RS 232 
KIT SEMEUR:!! vous permel dp vous constituer votre propre serveur avec ™> propresimages toul un 

- une carte série RS 232*" D '"""' *"' 
i ■ = -:sMecableCL5. 









590F 






1 '02 






590F 


t 104 




1 105 


590F 






1 '08 




1 109 




i HO 








1 112 


K 



JL BANK C 
JL BANK D 
EPflOM C 
EPROUD 
SERIE C 
SERIE 
KFT SERIE 
KIT SERVEUR 

Tolal 

Frais de port . . 
total général . . 



BON DE COMMANDE 



VILLE; 

CODE P0STAL:.._ 

Signature ides parents pour les mineurs) 



/ 



sctrafà 



«5/ 

1^%/n jeu de bataille navale pas comme les 
autres : le hasard y a fort peu de place et la straté- 
gie son importance. 




TRAFALGAR est une bataille 
navale, durant laquelle deux 
joueurs s'opposent. Le premier 
joueur commande la flotte fran- 
çaise (navires verts) ; le second 
joueur, la flotte anglaise (navires 
jaunes). Les deux flottes possè- 
dent chacune 1 3 navires. 
Le jeu apparaît à l'écran de la 
manière suivante : 

— en haut à gauche, la carte 
maritime où se déroule la 
bataille, 

— en haut à droite, la rose des 
vents qui indique la direction 
du vent, 

— en bas à gauche, la prise des 
instructions, 

— en bas à droite, l'indicateur de 
tours. 

Chaque partie se joue en 100 
tours, qui se décomposent 
comme suit : 

— L'ordinateur choisit au hasard 
la direction du vent. 

— Le premier joueur indique les 
coordonnées (horizontale et ver- 
ticale) du navire qu'il désire 
déplacer. 

— Il indique ensuite la direction 
(mouvement) de son choix (Nord, 
Sud, Ouest ou Est). C'est à cette 
fin que chaque navire dispose 
d'un potentiel de déplacement 
théoriquement constant et égal à 
5. Il se déplace donc de 5 
"cases" à chaque tour. Cepen- 
dant, le vent influe provisoire- 
ment sur ce potentiel. 

Le potentiel de déplacement d'un 



navire se trouve réduit de 2 si le 
vent est contraire au mouve- 
ment, et de 1 si le vent souffle 
dans une direction perpendicu- 
laire ad mouvement. Enfin, si la 
direction du vent correspond au 
mouvement, le potentiel de 
déplacement reste de 5. 

— Après s'être déplacé, le navire 
tire automatiquement dans la 
même direction que le mouve- 
ment, et dans elle seule. Inter- 
vient alors le potentiel de tir (il 
varie de 1 à 6, c'est-à-dire que la 
longueur du tir varie de 1 à 6 
"cases"). Le potentiel de tir est 
repérable au symbole affiché (il 
existe 6 types de navires — cf. 
programme "SYMBOL"). Cha- 
que navire touché par un tir 
adverse perd un point de poten- 
tiel de tir. Si ce potentiel est infé- 
rieur à 1, le navire est considéré 
détruit et disparaît de la carte. 

— Le tir du navire du premier 
joueur terminé, c'est au second 
joueur de jouer et de suivre le 
même schéma que ci-dessus, 
puis le tour se termine et le sui- 
vant commence. 

Si, avant le 1 00 8 tour, un joueur 
a réussi à détruire la flotte 
adverse, il est déclaré vainqueur. 
Dans le cas contraire, au 100° 
tour, l'ordinateur arrête la partie, 
additionne les potentiels de tir 
des navires restants, et ceci pour 
chaque joueur, et déclare vain- 
queur le joueur ayant le potentiel 
de tir le plus élevé. 



!Q ' *** TRAFALGAR *** 

15 ' Laurent PIASENTIN 

20HQGE 1 

30 FOR 1=0 TO 174 STEP 2:M0VE 0+ï.3O0:TA 

BifRWT'T N A F A L E A R';:NEIT:TAGOFF 

40 LOCATE 26, 1 1 îPSIHT'DE* ïLOCATE 22,14:? 

RINT'LAURENT PIASENTIN' 

50 FOR ï=100 TO 900 STEP lOCiSOUND 1,1,2 

Q.+sSOUND 2.10DO-X.2O,4:50UND 1,1000-1,2 

0.4:501™ 2,X,20,4:N£!(T 

60 LOCATE 1,24:1* 1, 24 :PfiINT* APPUYEZ SU 

R Uf€ TOUCHE S.v.P'iCALL SBB06 

70 'f« REGLES *** 

80 MODE 2:L0CATE 25, 1 ïPRINT'UN PEU D'HÏS 

TOIRE ...■ 

90 LOCATE l,6:PRÎNT'Le 21 oct. 1805. Nels 

on qui commande la flotte anglaise renco 

ntre.ncn loin du capde Trafaiqar.Villene 

uve nui fait route vers Naples.sur l'ord 

re de Saooleon. Nelson engage le ccn 

bat. «aïs œeurt aussitôt." 

100 PRINT' Cependant la flotte française 

est vaincue. et Villeneuve est capture.': 

S0SUE 310:LOCAÏE 1.25:PRIMT'APPU¥ES SUR 

UNE TOUCHE S.V.P':CALL 4BB06 

110 CLS:LOCATE l,lO:INPUT'Apres ce petit 

rappel historique. desirez-vous coinaitr 
e les règles de Trafalgar E0/N] ";fi£P* 
120 fiEPl*=yPPERtiREP*"l : IF REP1*=TP TKEN 

280 

130 CLS:LOCATE 33.1:PRINT'*« REGLES *** 
":L0CA7E 1.3:PRINT* TRAFAL5AH est une b 
ataille navale, durant laquelle deux joue 
urs s'opposent. Le premier joueur coMan 
de la flotte française (navires verts);L 
e second joueur, la flotte anglaise (navi 
res jaunes),' 

140 LOCATE 34, 5: PRINT 'Les deux flottes p 
ossedent chacune 13 navires. ':PRINT'Le j 
eu apparaît a l'écran de la manière suiv 
ante l'iPRINT'- en haut a gauche, la cart 
e maritime ou se déroule la bataille.':? 
RINT'- en haut a droite, la rose des vent 

150 LOCATE 50.B:PRINT*la dire:tion du ve 

160 PRINT'- en bas a gauche, la prise des 
mstructiDns.'iPRINT'- en bas a droite, 
l'indicateur de tours.'iPRlNT'Chaoue par 
tie se joue en 100 tours, gui se decompjs 
ent comme suit :':PRINT'- l'ordinateur e 



170 PRINT'- le premier joueur indioue le 
s coordonnées (horizontale et verticale) 
du navirequ'il désire déplacer. ':PRÏNT' 
- il indioue ensuite la direction (rave 
ment) de son choix (Nord, Sud, Ouest ou 
Est). C'est a cette fin gue chaque navire 

180 LOCATE 42,16:PRlNT'dispose d'un pote 
ntieLde déplacement' :PRINT'ttieorique»en 
t constant et égal a 5.11 se déplace don 
c de 5 'cases' a chague tour. Cependant 1 
e vent influe provisoirement sur ce pote 
ntiel.* 

190 PRINT'Le potentiel de déplacement d' 
un navire est réduit de 2 si le vent est 

contraire»! mouvement, et de 1 si le ven 
t souffle dans une direction perpendicul 
aire au mouvement. Enfin si la directio 
-' du vent correspond au Kuvewnt,le pot 
entiel de' 

200 PRINÎ'deplacement reste de 5.":L0CAT 
E 1, 25 i PRINT" APPUYER SUR UNE TOUCHE B.V. 
P'iCALL &BB06 

210 O-SiFfllNT'- après s'être déplace, le 
navire tire automatiquement dans la *eme 

direction quels mouvement.et dans ellê- 
seule. Intervient alors le potentiel de t 
ir (il varie de 1 a 6 - c'est a dire qu 
e la longueur du tir varie de 1 a 6 'cas 
es' -l.Le" 
220 PHINT* potentiel de tir est repérable 

au symbole affiche. Chaque navire touche 

par un tir adverse perd un ooint de p 
otentiel de tir. Si ce potentiel est infe 
rieur a 1,1e navire es-t considère detrui 
t et disparaît de la carte.' 
230 PRINT"- le tir du navire du premier 
joueur termine, c'est au second joueur de 

suivre lememe type de shema pour jouer, 
puis le tour se termine et le suivant co 
*mencB. ' 

240 PRINT" Si, avant le lOOeme touf.un j 
oueur a réussi a détruire la flotte adve 
r-se, il est déclare vainqueur. Dans le cas 
pontraire.au lOOeme tour, l'ordinateur ar 
rete la partie, additionne les potentie 
ls de tir des navires restants, et ceci p 
sur chaque' 

250 LOCATE l,12tPRIMT* joueur, et ùeclare 
vainqueur le joueur ayant le potentiel d 
e tir le plus eleve. ' :L0CATE 1,25:PRIHT' 
APPUYER SUR LK TOUCHE S.V.P'sCALL &BB06 



260 MODE hLOCATE 1,3:PRINT CHP.K143) 
RINT" Potentiel de tir: 6':PRINT:PRINT 
CHRtt 144) j: PRINT" Potentiel de tirs 5 
"iPRIHTsPRINT CriR*il45>::PRINT" Potent 
iel de tir: 4":PRINT;PRINT CHRI(14i);iPR 
INT' Potentiel de tir: 3' 
270 PRINT:PRINT CHR$U47);:PRINT' Pote 
ntiel de tir: 2':PaîNT:PRINT CHR*(148):: 
PRINT" Potentiel de tir: I" 
280 LOCATE 1,24: PRINT 'APPUYER SUS UNE TO 
UCHE POUR ENREGISTRER TRAFALGAR" :CALL &B 
BOrn 

290 RWTRAFALG2' 
300 *« DEFINITION SYMBOL *** 
310 SYMBOL AFTER 128 

320 SYMBOL 129,3,15,31,63,127,255,255.25 
5 

330 SYMBOL 130,255.127.63,31,63,255,255, 
255 

340 SYMBOL 131.127.127.255,255,255.255.2 
55,255 

350 SYMBOL 132,255,127,127,127,127.127,1 
27,127 

360 SYMBOL 133,127,255,255,255,255.255.2 
55,255 

370 SYMBOL 134,31,63,63,63,127,127,127,1 
27 

380 SYMBOL 135,1,1,1,3,7,15,15.15 
390 SYMBOL 137,0,0,0,24,24,0,0,0 
400 SYMBOL 138.6,6,0,0,0,0,96,96 
410 SYMBOL 139,6,6,0,24,24,0,96,96 
420 SYMBOL 140,102,102,0,0,0,0,11)2,102 
430 SYMBOL 141jl02,I02,0,24,24,0, 102,102 
440 SYMBOL 142,102"", 102,0,102, 102,0,102,1 
02 

450 SYMBOL 143,190,66,231,231,71,226,127 
.126 

460 SYMBOL 144,64,224,230,230,66,227,255 
,126 

470 SYMBOL 145,192.76,220,238,78,196,255 
,126 

480 SYMBOL 146,0,102,34.119,119,162,255, 
126 

490 SYMBOL 147,0,12,4,206.78,196,255.126 
500 SYMBOL 148,0,24,8,23,28,201,255.126 
51D SYMBOL 200,0,0,0,1,1,1,1.1 
520 SYMBOL 201.3,3,3,7,7,3,3,3 
530 SYMBOL 202,3,3,3,7,7,7,7,7 
540 SYMBOL 203,0 1 12B,12B,128,!28,192,192 
.192 

550 SYMBOL 204,192,192,192,224,224,192,1 
92,192 

560 SYMBOL 205,192.192,192,192,192,192,1 
92.192 



600 SYMBOL 209,0.0,7,31,255,255.255,255 

610 SYMBOL 210.0,0,192,255,255,255,255,2 

55 

620 SYMBOL 211,0,12,255,255,255,255,255, 

255 

630 SYMBOL 212,3,145,255,255,255,255,255 

,255 

640 SYMBOL 213,0,0,0,0,3,15,31,63 

650 SYMBOL 214.255,255,255,255,255,255,2 

55,255 

660 SYMBOL 215,0,6,31,255,255,255,255,25 

WD SYMBOL 219,0.192,255,255,255.255,255 

.255 

630 SYMBOL 221.31.63.255,255.255,255.255 

.255 

690 SYMBOL 223,128,192,224,255,255.255,2 

55,255 

700 SYMBOL 225^0,0,0,255,255,255,255.255 

710 SYMBOL 227,0,0.0.252,255,255,255,255 

720 SYMBOL 229.0.2,7.127,255.255,255,255 

730 SYMBOL 235, 63,31,3.1, 31, 31, 255,255, 25 

5 

740 SYMBOL 236.63,127,255,255,255,255,25 

5,255 

750 SYMBOL 237,1,3,7,63,127,255,255,255 

76D SYMBOL 238,0,0,7.15,47,255,255,255 

770 SYMBOL 239,255,127,15,31,255.255,255 

,255 

7B0 SYMBOL 240,127.127,255,255.255,255,2 

55,255 

790 SYKBOL 241,255,127.127.63,63,63.63,6 

3 

B0O SYMBOL 242,24,124,126,126,127,63.63, 

63 

810 SYMBOL 243,63.63,127,127,63,63,63,63 

B20 SYMBOL 244,63,63,63,63,62,2B 

830 SYMBOL 245.0,0,0,0,248,254,254,254 

840 SYMBOL 246,254,254,252,252,252,254,2 

54,254 

850 SYMBOL 247,254,254,128,0,0,0,0,0 

860 SYMBOL 248.7,15,15,15,7,7,7,7 

870 SYMBOL 249,7,15,15,31,31,31,31,31 

860 SYMBX 250,31,63,63,127,255,255,255, 

255 

890 SYMBOL 251,192,192,192,192,192,224,2 

24,224 

900 SYMBOL 252,224.240,240,240,248,252.2 

52,252 

910 RETURN 




&T- 



290 KBREB2=NBREB2*1:IF HB02013 THEN 2 
60 



300 ' 



» JEU* 



10 ' *** TRAFW.6AH **# 

15 ' Laurent P1ASENTIN 

20 CLEARiON EREAK 6CSUÏ 2160 

30 IWDE 1;INK 2.18:1NK 3.6 

40 SOSUB 1790 

50 ' M* INITIALISATION *W 

60 Din UI16,:6):DIH T(16.26):DIN DU6.26 

) 

70 FOR 1=1 TO 16 

90 FOR Z=l TO 26 

90 UII.Z)=C:TII,Z>=Q:DH.Z1=0:NEXT Z,I 

100 FÔR 1=3 TO 8:U< 1,26 1=3: NEXT 

110 FOR Z=4 TO 26:U(16,Z)=3:NEXT 

120 FOR 1=13 TO 26:UU5,Z)=3:NEXT 

130 FOR Z=22 TO 26:UU4,Z)=3:N£XT 

140 FOR Z=23 TO 2É:I=Z-11:U(13. ZJ=3:U(I. 

4}=3:U<I.5)=3:NEXT 

150 FOR Z=24 TO 26:I=Z-20:U(12.Z)=3:UU1 

,2)=3:U(I,3)=3!UII,4)=3:NÉXT 

160 FOR 2=25 TO 26:UI1D.Z>=3;U(9 I Z>=3:NE 

XT:U<I1,4)=3:U(11.5>=3 

170 T0UR=1:L0CATEI2,4,5:PEN*:,2:PRINTI2, 

TOUR 

180 ' *" AFFICHAGE NAVIRES ANGLAIS *« 

190 NBREB1=Q 

200 A=INT(2«RNDil)+n:B=INTi26*RNDiI)+l) 

!lF U1A,E>=1 OR U(A.B)=3 THEN 200 

210 UIA^MiTMNTGiRNDUl^liTIA.B^T: 

01A,B)=5 

220 SOSUB ISBOiSOUND 1,1C0.1:K=4+E:V=3+A 

:LOCATE H.V:PEN liPRINT CHM(S) 

230 NBRËE1=NBR£B1+1:IF NBREB1013 THEN 2 

00 

240 ' *** AFFICHAGE NAVIRES FRANÇAIS *** 

250 NBfiEB2=0 

260 A=12+INT<2*RNDI1H1):B=INT(26«I1ND<1) 

+H:IF UIA,B)=2 OR U(A,B)=3 THEN 260 

270 U<A,B)=2îT=iNT(3*SND(lM>iT!A,B)=T: 

BJA,E>=5 

280 SOSUB 15B0:S0UND i,100,l:H=4+B:V=3*A 

10CATE H.ViPEN 2:PRINT CHR*<S> 



310 FOR J0U=1 TO 2 

320 ' "• DIRECTION KJ VENT *** 

330 DVENT=INTI3.5*RNDfl)+l) 

340 LOCATE 36,4:PEN t:PRINT "NVLOCATE 3 

2.8:PRINT 'û'iLOCATE Sip^îFPINT'S'îLOCA 

TE 40,8:PRINT 'E 1 

350 ON DVENT 60T0 360,370.380.390 

360 DVENTÏ^N'iLOCATE 36,4:SOT0 400 

370 DVENTt^O* :LOCATE 32.8:S0T0 400 

380 DVENT*= , B , :LOCATE 36.12:50T0 400 

390 DVENTi= , E , :LOCATE 40.8 

400 PEN 2:PRINT DV£NT$ 

410 " *** PRISE DES INSTRUCTIONS **+ 

420 CLSi3:PEN#3,3:PHINTi3.■ AU JOUEUR N. 

■;JOU:'DE JOUER' 

430 FOR X=Q TO 2000:NEXT 

440 aS#3:PEN*3,3:PRINT#3,' POSITION H 

ORIZONTALE' 

450 L0CATEi3,13.3:INPUTi3.A 

460 SOUND 1.200, 10:IF A<1 OR A>16 THEN 4 

40 

470 CL5#3:PENt3,3:PHINTi3,' POSITION 

VERTICALE" 

480 L0CATE!3.i3,3:INPUT»3,B$ 

490 SOUND t,200.10:Nl=0:Blï=UPPERt(E*):R 

ESTORE 2010 

500 FOR X=l TO 26 

510 READ Mi 

520 NI=Ml+l:IF N1$=E1* THEN E=N1 ELSE 54 



530 SOTO 550 

540 NEKT:GOT0 480 

550 IF U(A.E)=Q THEN 440 

560 IF U<A.B>=3 THEN 44D 

570 IF U<A.B)=1 AND JCHJ=1 THEN 440 

5S0 IF U(A,B>=2 AND J0U=2 THEN 440 

590 CLS»j:PENK3.3:PHINT#3." rtOUV 

EMENT 1 

600 lGCATE#3,13,3:INPUT«3.fl* 

610 SOUND l,200.10!Mlï=UPP£Rt(HSl 

620 IF Hlt='N' THEN F=l :60T0 680 

63D IF fli$='S" THEN F=2:G0T0 720 

640 IF M*«"V THEN F=3îG0T0 760 

650 IF fHl="0" THEN F=4:GOT0 800 

660 GOTO 600 

670 ' *** POINTS A ENLEVER LORS DES DEPL 

ACEfENTS DES NAVIRES *** 

680 IF rH«= , N- AND DVENTi^N" THEN VEN7= 

D 

690 IF «*=■«' AND DVENT*='0" OR DVENTï= 

•E" THEN VENT=-1 

700 IF mU'H' AND DVENTÏ-'S" THEN VENT= 

-2 

710 SOTO B40 

720 IF H1$="S' AND DVENT*='5' THEN VENT= 



730 IF fUM'S" AND DVENT^'O" OR DVENTÏ= 

•E' TVEN VENT=-1 

740 IF m*='S' AND DVEMTt^N' THEN VENT= 

-2 

750 GOTO 640 

760 IF M^'E" AND DVENTJ^E 1 THEN VENT= 




790 SOTO 340 

IF ms= , 0' AND DVENT$=' 



810 IF ÎIH^O' AND DVENT^'N" OR DVENTî= 
S" THEN VENT=-1 

GO IF Hl^'O 1 AND DVENTts'E" THEN VENÎ= 
2 

330 ' *** DEPLACEMENT *** 
840 AA=A:BB=E:AAÎ=A:EE1=B 
850 IF M*="0* OR Hlt="E" THEN 930 
B60 ' «* DEPLACEMENT NORD ET SUD *** 
870 FOR C=AA1+1 TO AA1+5+VENT 
880 IF M*='N* THEN AA=AA-1 ELSE AA=4A-: 
B90 IF AA<1 OR AA>16 THEN 990 
900 IF UIAA.BB1O0 THEN 990 
910 60SUB 1630 :NEXT: SOTO 990 
920 ' •** DEPLACErENT OUEST ET EST *** 
930 FOR C=BB1+1 TO BB1*5+VENT 
940 IF m*="0' THEN BB=BB-1 ELSE BE-Eî+l 
950 IF BB<1 OR BB>26 THEN 990 
960 IF IHAA,BBK>0 THEN 990 
970 SOSUB 1630:NEXT 
980 ' **• TIR m 
990 ON F GOTO 1000, 1010, 1020,1030 
1000 0=-l:PîO:SOTO 1040 
1010 0=1:P=0:50T0 1040 
1D20 0=0iP=l:GOT0 1040 
1030 0=0:P=-1 
1040 R=A:U=B:a=0 
1050 FOR C=I TO TfR.H) 
1060 IF a=i TIEN 1220 
1070 A=A+OîE=E+P;IF A<1 OR A>16 OR Kl 
R B>26 THEN 1220 
1080 IF UfA.B>=3 THEN 1220 
1090 IF U!A.B)=0 THEN 1200 
1100 ÎF U(A,B)=1 AND J0U=2 OR U(A,B)=2 A 
ND J0U=1 T>CN 1220 

U1Q IF U(A,B»=I AND J0U=1 OR U<A,B)=2 A 
TO J0U=2 T>€N FL=I 
1120 T(A,B)=T(A,B)-1 

1130 IF T(A.B)=0 THEN UIA.B)=0 AND D(A,I 
>=D ELSE 1150 

1140 SOUND l,4OO,10O,3,0,0,10:H=4+B:V=3* 
AiLOCATE H.ViPRINT * *:SOT0 1210 



1150 ' *** AFFICHAGE APRES TIR *» 

1160 SOSUB 17D0:H=4*E:V=3+A: LOCATE H,V 

1170 IF J0U=2 THEN 1190 

1180 SOUND 1,67,10,3:PEN kPRINT CHRt(S) 

:SOTO 1210 

1190 SOUND 1,67,10,3:FEN 2:PRINT CHRïtS) 

:50T0 1210 

1200 SOUND I,30,!,3:H=4+B:V=3+A:LOCATE H 

.V:PEN 3:PRINT "."iFOR ï=0 TO 300:NE(T:L 

OCATE H,V:PHINT ' ■ 

1210 NEXT C 

1220 A=R:B=« 

1230 ' h* UN VAINQUEUR I *** 

1240 T1=0:T2=0 

1250 FOR 1=1 TO 16 

1260 FOR Z=l TO 26 

1270 IF U(I,Z)=0 OR U(I,Z>=3 THEN 1290 

1280 IF U(I,Z>=1 THEN TM1+1 aSE T2=T2 

+1 

1290 NEIT Z,I 

1300 IF T1=0 AND T2O0 THEN 1310 aSE 13 

20 

1310 CLS«:PB»3.3ïPflINTi3, , LE GAGNANT E 

ST LE JOUEUR N.l'îSOTO 1530 

1320 IF T1O0 AND T2=0 THEN 1330 ELSE 13 

40 

1330 aS*3:PENI3,3!PfiINTt3, , LE GAGNANT E 

ST LE JOUEUR N.2":50T0 1530 

1340 ■ M* FIN BOUCLE JOUEURS ••• 

1350 NEKT JOU 

1360 T0UR=T0UR*1 

1370 IF T0UR<=9 THEN 1390 aSE 1380 

1380 IF T0UR<=99 THEN 1400 aSE 1410 

1390 LOCATEI2,4,5:PEfrt2.2:PRINTI2.T0UR:G 

OTO 1420 

1400 LOCATE#2,3,5iPEN#2.2:PRINTI2,T0UR:G 

OTO 1420 

1410 L0CATEI2.3,5:PENI2.2:PRINT#2,TOUR 

1420 IF TOUHOIX THEN 310 

1430 ' *« FIN DU JEU APRES 100 TOURS ** 

1440 T1=0:T2=D 

1450 FOR 1=1 TO 16 

1460 FOR Z=l -TO 26 

1470 IF UU,Z)=0 OR UII,Z)=3 THEN 1490 

14B0 IF U(I,ZÏ=1 THEN T1=T1+T(I,Z) aSE 

T2=T2+TII,Z) 

1490 NEÏT Z,I 

1500 IF T2)T1 THEN 1520 

1510 CLSi3:PEN*3,3:PRINT»3,"LE GAGNANT E 

ST LE JOUEUR N.2'îS0T0 I5X 

1520 aSiSiPENIS.arPRINTfa/LE SAGNANT E 

H LE JOUEUR N.J*:60T0 1530 



1530 FOR X=100 TO 300 STEP 5:S0UfJD 1,X.5 

.3:S0UND 2,400-X T 5.3:NEXT 

1540 FOR X=500 TO 200 STEP -5: SOUND 1,1 

,5,3:S0UND 2,700-I.5,3:)CXT 

1550 FOH ï=100 TO 300 STEP 5:S0UND 1,X,5 

,3;S0UND 2,400-X,5,3:NEXT 

1560 END 

1570 ' *+* AFFICHAGE DEBUT NAVIRE *** 

1580 ON T(A,E)-3 SOTO 1590,1600,1610 

1590 S=145:S0T0 1620 

1600 S=144:G0T0 1620 

1610 £=143 

1620 RETUfiN 

1630 ' *** AFFICHAGE NAVIRE APRES DEPLAC 

FJENT ET TIR *** 

1640 H=4*E:V=3+A: LOCATE H,V:PRINT ' ' 

1650 U(AA.BB)=U(A,E):TIAA.EE1=T(A.B);D(A 

A.EB)=D(A,B):U(A,B)=0:T(A,B)=0:D(A,B1=0: 

A=AA:E=EB 

1660 60SUÈ 1700 :H=4+B:V=3»A: LOCATE H.V 

1670 IF J0U=2 THEN 1690 

1680 SOUTJD 1, 142,1. 3:P£N 2:FRINT CHRï(S) 

ïPETURN 

1690 SOUND 1, 142,1. 3:PEN liPRINT CHM(S) 

îRETURN 

1700 ON TiA.B) SOTO 1710,1720,1730,1740, 

175D, 1760 

1710 S=148:60T0 1770 

1720 S=147:60TO 1770 

1730 S=146:50T0 1770 

1740 S=145:60T0 1770 

1750 S=144:S0T0 1770 

1760 5=143 

1770 RETURN 

1780 ' *** SRAPHISICS + PRESENTATION ♦* 

1790 ' «* CARTE *** 

1B00 PEN l:X=25ïF0R V=13 TO 15:L0CATE 7, 
V:PRIVT CHR*!229+ïl+CHRï(232+ïi:L0CATE 8 
,Y+7:PSINT CHR$(ia7+Y)+CHR*(190+ï):ï=ï-I 
:LOCATE ¥+12,X:PRINT CHRSi222+¥):NEXT 
1810 X=1:F0R Y=23 TO 24:L0CATE B.YîPSINT 
CHfiï(225tYI+CHRt(22S+r):L0CATE 23,Y-3:P 
RINT CHRS(215+Y):X=X-1:L0CATE 29,Y-4:FSI 
NT CHSÏi241+X):NEXT 

1820 LOCATE 3.25:PRINT CHS*(250)+CHR*(21 
4) 

1830 FOH X=1D TO 1Ê:L0CATE X,25:PRINT CH 
Rî(196+X):NEïT 

1840 LOCATE 17.24:PRINT CHRti213) 
1350 LOCATE 1B,24:PRINT CHSJ!215>+CHFï(2 
10) 

1360 X1=-4:F0R ï=20 TO 24 STEP 2:XlïXl+4 
:LOCATE I.24:PSINT CHF4i219+ï!i+CHRtl221 
*X1):NEXT 

1B70 LOCATE 29,13:PRINT CHRï(129) 
1880 LOCATE 30.17:PflINT CHRt(130) 
1890 'OCATE 30,16:PRINT CHR$(240) 
1900 X^ -FOR ¥=12 TO I5:X=X-l!L0CATE 30, 
YiPRINT IRIU35+X):NEXT 
1910 FOR X=17 TO 30:L0CATE X,25:FRINT CH 
R$(214):NEXT 

1920 FOR X=26 TO 30:L0CATE X,24:PRINT CH 
Ril214):NEXT 
1930 FOR X=27 TO 30:L0CATE X.23;PfiINT CH 



flt(214):NElT 

1940 FOR X=2B TO 30:L0CATE X,22:PRINT CH 

Rti214):NEIT 

1950 FOR X=29 TO 30ïL0CATE X,21:PaiNT CH 

Rt(214):HEIT 

1960 FOR Y=!B TO 20:L0CATE 3Û,Y:PRINT CH 

R*(2141:NEXT 

1970 FOR X=l TO 16:PEN 1: LOCATE l,X+9sPB 

INT X:NEXT 

19B0 LOCATE 1,25:F0R X=0 TO 6iPHINTiNEXT 

1990 aOT 62,95,3:DRAW 62,354, 3:DRAM 480 

.354,3:DRAW -'.HO, 95, 3: DRAW 62,95,3 

2000 FOR X=l TO 26:R£AD NISîLOCATE 4+X,2 

:PEN liPRINT N1S:NEXT 

2010 DATA A,B.C,D,E,F,G,H,I,J,K,L,M,N.O, 

P,Q,R.S,T.U,V,U,X,Y,Z 

2020 ' *** ROSE DES VENTS *** 

2030 PLOT 567.306,3:DRAW 567, 333, 3: DRAM 

565,306. 3îaOT 567,333,3:DRAU 569,306,3 

2040 PLOT 567,25B,3:DRAW 567.226.3!DRAH 

565,258, 3: PLOT 567,226,3:DRAU 569,25B,3 

205D PLOT 543,280,3:DRAU 514,280,3:DRAH 

543, 278,3: PLOT 514,280,3:DRAU 543,282,3 

2060 PLOT 591,280,3îDRAM 621,280,3:DRAH 

591.27B,3:PL0T 62I.280,3:DRAH 591,282,3 

2070 DES 

2080 FOR 5=0 TO 90 

'2090 ORISIN 567.280 

2100 Q=24*C0S(G):H=24iSIN(G):DRAU Q.M.3: 

DRAW -û,-W,3:DRAW 0,-N,3!DRAU -0,N,3 

2110 NEXT 

2120 LOCATE 36,4:PEN 1:PRINT*N":L0CATE 3 

6, 12:PRINT'S" iLOCATE 32,8:PRÏNT•0■ :LOCAT 

E 40,B:PRINT , E':L0CATE 32.14:PRINT"Direc 

tion'îLOCATE 36,t5iPRINT , du":L0CAT£ 35.1 

AiffilNfVtBt' 

2130 WIND0HI2,32,40,20,25:PAPER#2.3:aSi 

2:PE3»2,1:PRINT*2, ■ Nbre'îPRINTi:," à 

e'iPRINTK,' Tours* 

2140 «IND0Ut3.5,3Q.22,25:PAPERI3,l:CLStt3 

215D RETURN 

2160 ' **i BREAK m» 

2170 PEN liHOOE 2:END 



Progiciel de comptabilité générale utilisé depu 
1982 pai des PME, agriculteun, arasans « libéran 
De la saisie au bilan, 8 journaux, 400 compt 
(7 chiffres), lettrage. Edition des comptes, joumau 
grand livre, balance, compte de résultat et bilan > pr 
visoire ou définiùi). 
Licence utilisaieui 2 000 F. TTC 
Fonctionne sur AMSTRAD sous CPM 2.2. ou 3 
2 lecteurs, version pour 4M, 664, 6128 et PC 
8256. 

COMPT AFAOL existe aussi sur TANDY TRS 8< 
modèles 2, 12, 16, 3, 4, 4P. SMT GOUPIL 3 P 
et IBM et comparibles. 
DISQUE démontration 300 F. TTC 
Revendeurs bienvenus. 



MER 



B.P. n° 2 St-Philibert 
56470 La Trinité-sur-Mer | 
97 55 09 74 



ANNONCEZ-VOUS ! 
Annonces 



La place réservée aux petites a 
limitée En conséquence, celles-ci passent 
de ns leur ordre d'arrivée. Par contra, Isa peti- 
tes annonçai farfelue! sont systématique- 
ment rejetées... De même, comme il est peu 
probable qu'il existe des "généreux dona- 
teurs" de matériels ou de logiciel*, les peti- 
te! annonces faisant appel A ces philantro- 
pes ne seront insérées que si la place libre 
le permet. 

Seront refusées toute* le* annonce* visant 
à vendre ou échanger des Hâte* ou copte* de 
logiciels non garanti* "d'origine ". ainsi que 
toute annonce Incitant au piratage. 
En conséquence, réfléchi sseï bien avant 
d'envoyer vos texte*. 

Les petites annonce* doivent impérativement 
nous parvenir sur la grille (découpée ou pho- 
tocopiée), le texte étant rédigé é raison d'un 
caractère par case. 

Enfin, toute annonce non accompagnée de 
timbre* ne sera pas insérée. 



Détkjîanl AMSTRAD «« ch 



9*340 BOUC AU, t. 



Vends ou échange Fightet Pïlot et Mission Delta. 
Vends imprimante GP 500 : 2000 F. Pascal RIC- 
CHI, 1 1 rue Joseph le Brix, 73000 CH AMBERY. 

Vends AMSTRAD CPC 464 + moniteur vert + 
adaptateur couleur MPI + joystick, état neuf (sous 
gerantiel : 2200 F. tél.: 42.98.44.32 IH.B.I. 



Vends CPC 464 c 



ir (01/851 + 40 jeux ^ 



Panel JOLLY. I 



Echange programmes pour AMSTRAD CPC 464. 

Michel LE MOiGNE. 128 Bd Galliéni, 92390 VIL- 
LENEUVE LA GARENNE, tél.: (Il 47.94.20.93 



CUCHY SOUS BOIS. 

Vends AMSTRAD CPC 464 Monite 



Vends Sattle ri 



échanges logiciels (jeux 
Daniel DELANNOY, 58 a» 
tél.: 20.52.24.73. 



, 76360 BARENTIN. 



ian DUFETELLE. 6 



t. G. FAUTHOUX. ( 



ion. stocks, fichiers, tableurs. 

i BLANDIN, epleceduPreBoOn 
K PROVINS, tél.: 60.67.60.19. 

Vonda 464 monochrome + Bjeu» * SOutlitairn + joys- 

Amatrad 664 cherche contacts pour échangv oroga. rruci 
et blOodllns. T. BLANC, Lee Orgues, 04 SOC RIEZ. ML: 

AFFAIRE ! Vends micro-ordinateur LASER 
200 (500 Fl + RAM 64 k 1300 FI + joysticks 
et progs (200 Fl. DATA recorder compatible 
CPC 664 (300 Fl. Tél.: (48) 71 .49.85, 



27. as 72.35. 69 



way : 110 F. Electro Freddy : 
80 F. Roland Time :80 F. Forest Worlds End : 75 F. 
M. FERRER. 07170 VILLENEUVE DE BEflG. 

Vends AMSTRAD CPC 664 avec 9 mois de garan- 
tie -i- joystick + nombreux logiciels, valeur 8190 F, 
vendu 6000 F. Tél.: 622.27.32 (Paris). 

R.A.M. Club Amstrad. Rue Ernest Rêver, 83400 
HYERES. tél.: 94.57.72.84 et 94.38.57.37. réu- 
nion le mardi A 18 hetle vendredi é 20 h. Cotiaa- 



Vends AMSTRAD 464 + lecteur disquettes + 
imprimante OKI 82 - interface couleur + logiciels 
jeux et utilitaires : 6000 F. M. HERVY. tél.: 
97.60.01.57. 

Vends AMSTRAD CPC 464 couleur + disquette + 
joystick + 160 programmes : 6000 F. Pierre AVA- 
ZERI. Ch. du Merlan, bat. 14, Les Hirondelles, 
13013 MARSEILLE, tél.: 91.98.40.90. 

Traduis toute documentation publiée en anglais. 0. 
MESSlANT. 8 a. des Peupliers. Morbecque, 591 90 
MAZE8HOUCK, tél.: 28.41.73.27. 



r, «i 

\l i 

I& 1 


i 
i 


les petites annonces et les messages 


1 
1 

1 


i 

i 


















































1 


















































1 
1 


















































i 


















































i 


















































1 


i 
i 


Coupon à renvoyer accompagné de 3 timbres à 2,20 F à : 
SORACOM, 10 Avenue du Générel de Gaulle, 35170 BRUZ 


1 

1 

1 




L'AVENTURE HISTORIQUE 



MONTSEGUR Pour AMSTRAD esi disponible chez votre revendeur 
Bon de commande à retourner à NORSOFT - 49, rue des Rosiers, 14000 CAEN - Tél. 31.86.56.69 

Nom Désire recevoir 1 Montségur D 1 40 F 

Prénom 1 Tyrann D 185 F 

Adresse | Play "box U 100 F 

1 Aquad D 1 10 F 

Chèque à l'ordre de OPUS (Ajoutez 20 F de port) 1 Space Wolf D 1 1 F 



Vends AMSTRAD CPC 464 couleur + joy- 
stick + jeux + ass.-désass. + progs. 
perso. : 3600 F (févier 1985». Tél.: (61 



Achète ou échange programmes sur AMS- 
TRAD. Cherche Amstradistes dans le région 
de Metz. Vends ZX Spectrum 48 ko 106/86) 
+ 58 progs. Vincent BASSI. 12 rue des 
Roses, 57000 METZ, tél.: (8) 765,59.00. 

Adil Belaouni cherche personnes possédant 
Amstrad CPC 464 ou 664 pour échanges 
programmes et idées. Tél.: [60] 92.65.55 le 
soir eu adresser liste Av. 44b, me des Vignes, 
74240 GAILLARD. 

Vends ou échange 4 super logiciels en K7 
tous neufs pour AMSTRAD CPC 464 ou 664. 
Roland on the ropes : 80 F. Galaxia : 60 F. 
Ghosbuster : 100 F. Sorcery : 100 F. LEE, 
La Soliderité Chemin de le Bigotte, Bat. N° 
24, Appt. 957, 1 301 6 MARSEILLE, tél.; (91 ) 
51 .86.03. 



u Basic AMSTRAD : premiers 
pas SOFT 41 1 12 K7). Tableur Easi-Amscalc : 
SOFT 453 (2 K7). Budget familial de chez 
Sprites. Tableur "Amcalc" dechezSDI. Ges- 
tion fichier "Ambase" de chez SDI. Program- 
mes éducatifs : SOFT 405 : les lettre magi- 
ques. SOFT 406 : l'ardoise magique. SOFT 
407 : L'horloger Un. SOFT 444 : Electro 
Freddy. Programmes jeux : SOFT 1 1 2 : Har- 
rier Attack. SOFT 114; Surtan'sMaze. SOFT 
1 1 5 : Oh Mumm, Je recherche tout logiciel 
de gestion sur disquette de préférence. 
Contact avec possesseurs lecteur de disquet- 
tes. Dominique BLANDIN, 6 place du Pré Bot- 
tin, A 636. Chambpenoist, 77160 PROVINS. 

Cherche correspondant (es I, français et étran- 
gers pour échange de programmes, trucs, 
astuces, etc. Vends aussi cause double 
emploi un AMSTRAD CPC 464 + imp. OMP 
1 (Amstradl + 1 80 prgs. Vente séparée pos- 
sible. Daniel FREY. 8 imp. des Hirondelles, 
671 10 REICHSHOFFEN, tél.: (881 09.70.79 
laprès 19 h). 



Vends pour ZX81., cause acquisition autre 
matériel, assembleur + dés assembleur + 
doc. Microconcept (500 FI . Nombreux livres 
surZXBI à moitié prix. Tél.: (1) 772.92.18 

(38 li HB. 

Vends ZX81 + 16 k + clavier performant 
+ K7 de jeux + touche RAZ + touche chan- 
gement de couleurs + gros stock de pro- 
grammes 1 et 16 k + alimentation + cor- 
don TV + cordon K7 + documentation Basic 
complète + documentation sur ZXB1. Le 
tout pour 2500 F ferme. Martial LIOGIER, 67 
rue du Buzenval, Centre Seidac. 7B800 
HOUILLES. 

Echange nombreux programmas pour CPC 
464 + documentations + traductions... 
Christophe WAROUX, 1 rue Latérale, 62470 
COLONNE RICOUART, tél.: (21 7 52.57.97. 
Réunion du club AMSTRAD au siège du Club 
Informatique Bruaysien au 41 rue Louis 



Dusart s Bruay en Artois (62), les vendredis 
de 1 S h à 20 h, les samedi après-midis et 
dimanche matins. 

Achète logiciels AMSTRAD (jeux, utilitaires). 
à un prix modéré. Didier HON, Rue St. Nico- 
las, 71490 Couches. Tél.: 1851 49.60.65 
(week-end! . 

Achète logiciels K7 pour CPC 464 jeux utili- 
taires, éducatifs, profession nais pour créer 
logithèque. Ph. DEMOULE, Sauvessanges, 
63840 VIVEROLS. 

Vends, pour AMSTRAD CPC 464, nombreux 
logiciels IHarrier Attack, Ratly II, Right Path 
737, etc.) pour un prix très intéressant, Jean 
Paul SANCHEZ, 5, av. Fraigière, 84000 Avi- 
gnon Tél.: 90.87.26.01 HR. 

Vends AMSTRAD CPC 464, moniteur 
monochrome, sous garantie + traitement de 
texte Amsword ; 2200 F. Vends contrôleur 
de lecteur de disquettes AMSTRAD: 350 F. 
Vends 1" lecteur de disquettes (avec 
contrôleur), sous garantie : 2100 F. Vends 
imprimante Seikosha GP 80 ; 890 F. Tél.: 
978.95.15 après 19 h. 

Vends ZX81 + 16k + clavier mécanique + 
interface RTTY avec logiciel + mini K7 : 
1000 F. Yaesu FT 301D (équipé 1 1 m| + FC 
301 + micro de table + ant. 3 él. Hy-gain 
(10 m) avec rotor, coax., et cfibles, le tout : 
5500 F. AMSTRAD CPC 464 moniteur vert ; 
2300 F. M. ROSSIGNOL. Domaine de Rique- 
bonne, 06220 VALLAURIS, tél.: 193) 
61.73.05 HB. 

Vends AMSTRAD CPC 464 moniteur 
monochrome vert + adaptateur Péritel + 
joystick + 15 logiciels + programmes. F. 
BARBANCHON, tél.: (31) 22.90.23. 

Vends TI99/4A + Péritel + Basic étendu + 
câble magnétophone + nombreux jeux en 2 
volumes. Le tout : 2000 F. Tél.: (9) 
78.67.03. le mardi de 9 h à 20 h. 

Vends AMSTRAD CPC 464 couleur + joys- 
tick : 3600 F. Tél.: (1) 260.33.00 poste 
57.52 de 9 h a 18 h. 

Vends CPC 6128 couleur + garantie : 
5490 F «valeur 5990 FI. tbe, urgent. D. 
TENNE, 20av. Paul APPEL, 75014 Paris, tél.: 
(1) 541.20.61. 

Vends AMSTRAD CPC 464 moniteur 
monochrome vert sous garantie + jeux : 
2200 F. Dominique GUILHEM. 92800 
PUTEAUX, tél.: 773.77.91. 

Vends AMSTRAD 464 spécial OM mon. vert 
peu servi, s. garantie avec 1 macro PG OM 
23 k qui permet : E.R RTTY, EME, P. Osca- 
r TPS réel. C.Locator :2450 F. F10W, 18 
Grande Rue, 54420 SAULXURES LES 
NANCY, tél.: (8) 320.46.23 après 19 h. 



Cherche personnes possédant le CPC 464 et 
664 pour échange de programmes d'astu- 
ces... Envoyer vos listes d'échanges, répon- 
ses assurées. Eric PRAT, 1 allée Claude 
Debussy, 45390 PUISEAUX. 



Vends VIC 20 PAL + lecteur K7 VIC 1 530 
+ jeux (Blitz, Othello, Star battle, etc.l + 
livres : 1 800 F (â débattre). T. LEVY, 31 3 rue 
Lecourbe, 75015 PARIS, tél.: 558.10.44. 

Vends 1 00 magazines infor. pour 900 F, état 
neuf, récents (83-85) (Soft & Micro, Tilt, Ci, 
etc.). M. LAPLANCHE, 87 Av. A. Briend, 
92120 MONTROUGE. 

Echange programmes AMSTRAD CPC 4S4. 
Cyril CARON, 106 rue de la République, 
39400 MOREZ. Joindre son numéro de télé- 

Vends TRS 80, modèle 1 . niveau 2 complet 
avec interface (doubleur de densité et RS 232 
C) + moniteur N/B + 3 drives 5 1/4 + ali- 
mentation séparée et alimentation pour deux 
drives. Basic. Fortran, Pascal, Logo, 
ASM/Z80.4DOS + nombreux programmes 
: 7000 F à débattra. M. Lucien MILLOT. 29, 
allée du Clog Gagneur, 93250 NOISY LE 
GRAND, tél.: 304.03.07 après 20 h ou 
784.74.79, poste 41/422. 
Cherche Amstredista pour échanges de logiciels ai 
■rues (plus da 45 programmes an L.M.I. J.F. 
PICART, 22 av. de Champan, ! 3600 LACIOTAT. 

Acheté ou échange programmes pour CPC 464, 
Ecrire s Jérôme RAFFARD, S rue d'Annal. 6O20O 
CLAHOIX. tél.: 44.83.38.07. 
Egarés du dédale du Kikekankoi, n'abandon- 
nez pas I Offre 20 F rens. indisp. pr. conti- 
nuer aventure. PERROUD, Rive de l'Oie. 
25300 PONTARLIER. 

Vends monit. couleur CPC 464 neuf ; 
1600 F. Fr. GOURGUES, 1 rue de l'Eglise, 
42400 ST. CHAMOND, tél.: 77.22.91 .68 et 
77.59.15.30. 

Vends cause double emploi imprimante Laser 
PP50 coul, état neuf, juin 65, garantie : 
900 F. P. LEONARD, 95b rue de l'Aigle, 
92250 LA GARENNE COLOMBES. 

Vends micro-ordinateur SINCLAIR ZX81 , cla- 
vier ABS -i- extension de mémoire 16 k 
RAM : 600 F. Téléviseur N/B Radiola 
210-72 ;31 cm portable sous garantie 1 an : 
600 F. Magnétophone à cassettes Thomson 
MK 142 T : 350 F. Achats réalisés il y a un 
an. Le tout en parfait état. Ou l'ensemble : 
15500 F. G. MALET. BP 29, 94267 FRES- 
NES Cedex, tél.; {1 ) 668.10.77 avant 1 2 h. 



Vend» AMSTRAD CPC 664 + 






mentetkm. programmes + lOdiaquettes Ijeux, lan- 
gage, gestion, deprotecteuf , accès direct) : 6500 F. 
Tél.: III 39.46.58.11. 

Vende logiciel fur CPC 464 K7 (Starion : 100 F, 
Rally 2 : 125 F, Sorcery : 80 F, etc.). J. PARISOT, 
Bassev les Citeaux, 21 1 10 GENLIS. 

Prisonnier cherche pour AMSTRAD 464 

Tout contact bienvenu. Egalement échange 
programmes. LANDRY - 4108-B/349, 10 
quai de la Courtille. 7701 t MELUN. 
Vends Amstrad CPC 464 couleur + joystick 
-i- jeux = ass.-désass. + prog. perso : 
3600 F (février 1985). Tél.: (6) 016.B7.46,' 
Laurent THAREAU, 5 rue des Fleurs, 91240 
ST. MICHEL/ORGE. 



la nouvelle superproduction Cobra Soft 

MEURTRES SUR L ATLANTIQUE 




UEPLAgg-e 



U^I 



M, ^ 



WanL 



«SOT"*'»'"'"..!*»'»'™ 



t 






couleurs- £S 

Auteur L- BI1 







En ve^e por^ 




27. rue de Leningrad 75008 Paris Tél.: (1)387.27.27+ ERE INFORMATIQUE